Array.isArray(new Proxy([], {})) should be false (Bug 1096753)
David Bruant
bruant.d at gmail.com
Sat Nov 15 01:24:10 PST 2014
Le 13/11/2014 17:29, Boris Zbarsky a écrit :
> On 11/13/14, 6:44 AM, Andreas Rossberg wrote:
>> Well, the actual diabolic beast and universal foot gun in this example
>> is setPrototypeOf. ;)
>
> Note that there is at least some discussion within Mozilla about
> trying to make the prototype of Object.prototype immutable (such that
> Object.getPrototypeOf(Object.prototype) is guaranteed to always return
> the same thing, modulo someone overriding Object.getPrototypeOf),
> along with a few other things along those lines. See
> <https://bugzilla.mozilla.org/show_bug.cgi?id=1052139>.
This would result in objects which [[Prototype]] cannot be changed but
which properties can be changed.
This is not possible per ES6 semantics I believe unless the object is a
proxy (which setPrototypeOf trap throws unconditionally and forwards the
rest to the target). Is it a satisfactory explanation? Should new
primitives be added?
> Whether this is web-compatible, we'll see.
I guess my above questions can wait the answer to this part.
David
More information about the es-discuss
mailing list