tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

isArray.js (1147B)


      1 function f() {
      2    assertEq(Array.isArray(10), false);
      3    assertEq(Array.isArray([]), true);
      4    assertEq(Array.isArray(Math), false);
      5 
      6    var objs = [{}, []];
      7    for (var i=0; i<objs.length; i++)
      8        assertEq(Array.isArray(objs[i]), i === 1);
      9    var arr = [[], [], 1];
     10    for (var i=0; i<arr.length; i++)
     11        assertEq(Array.isArray(arr[i]), i < 2);
     12 }
     13 f();
     14 f();
     15 f();
     16 
     17 function testObjects() {
     18    var arr = [{}, [1], Array.prototype,
     19               new Proxy(this, {}), new Proxy([], {})];
     20    while (true) {
     21        var arrays = 0;
     22        for (var i = 0; i < arr.length; i++) {
     23            if (Array.isArray(arr[i]))
     24                arrays++;
     25        }
     26        assertEq(arrays, 3);
     27        if (inIon())
     28            break;
     29    }
     30 }
     31 testObjects();
     32 
     33 function testValues() {
     34    var arr = [1, {}, [1], Array.prototype, null,
     35               new Proxy(this, {}), new Proxy([], {})];
     36    while (true) {
     37        var arrays = 0;
     38        for (var i = 0; i < arr.length; i++) {
     39            if (Array.isArray(arr[i]))
     40                arrays++;
     41        }
     42        assertEq(arrays, 3);
     43        if (inIon())
     44            break;
     45    }
     46 }
     47 testValues();