tor-browser

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

Array-of-cross-compartment.js (451B)


      1 // Array.of returns an object in the target compartment, not the caller's compartment.
      2 // This rules out implementations along the lines of (...args) => args.
      3 
      4 var g = newGlobal();
      5 var ga = g.Array.of(1, 2, 3);
      6 assertEq(ga instanceof g.Array, true);
      7 
      8 g.Array.of = Array.of;
      9 var a = g.Array.of(1, 2, 3); // this-value is a wrapper of g.Array, which IsConstructor, so we call it
     10 assertEq(ga instanceof g.Array, true);  // it produces a g.Array instance