On Aug 12, 2010, at 2:07 PM, Erik Arvidsson wrote:

> It seems like ES5 does not define the [[Enumerable]], [[Configurable]]
> nor [[Writable]] for the fields on Array.prototype and others like it.

It does, by specifying default values in the intro to Clause 15, last paragraph:

In every case, the length property of a built-in Function object described in 
this clause has the attributes { [[Writable]]: false, [[Enumerable]]: false, 
[[Configurable]]: false }. Every other property described in this clause has 
the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: 
true } unless otherwise specified.

ES1-3 did likewise, IIRC.


> I spec'ed the attributes for all the methods to match ES+Reality. This
> means that the methods have {enumerable: false, configurable: true,
> writable: true}. This matches what JSC, V8, SpiderMonkey and IE9p4 do.

ES5 has your back ;-).


> In the future, it would be good if we could follow the existing
> semantics for the built-in natives.

Agreed.

/be
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to