chromium/third_party/blink/web_tests/fast/dom/collection-null-like-arguments.html

<p>This test reports the value that document.all returns for various null-like arguments.</p>
<p>Written for <a href="http://bugs.webkit.org/show_bug.cgi?id=13106">http://bugs.webkit.org/show_bug.cgi?id=13106</a>.</p>
<hr>
<pre id="log"></pre>

<script>
function log(s)
{
    document.getElementById("log").appendChild(document.createTextNode(s));
}

function getDescription(value)
{
    if (value === undefined)
        return "undefined";
    if (value === null)
        return "null";
    if (typeof value == "number")
        return value;
    if (typeof value == "string")
        return '"' + value + '"';

    return "unknown description";
}

window.onload = function onload()
{
    if ("testRunner" in this)
        testRunner.dumpAsText();

    var arguments = [
        0,
        "",
        "0",
        undefined,
        null
    ];
    
    for (var i = 0; i < arguments.length; i++) { //>
        var value = arguments[i];
        var description = getDescription(value);
        log("document.all[" + description + "]:      " + document.all[value] + "\n");
        log("document.all(" + description + "):      " + document.all(value) + "\n");
        log("document.all.item(" + description + "): " + document.all.item(value) + "\n");
        log("\n");
    }
}

</script>