« Bugzilla Issues Index

#73 — Listing the for-in enumeration order as an internal object method

E-mail on the topic:
Reviewed copy:
I think it would be worth for spec readability to give a name to the
for-in property enumeration internal method and list it as such in ES5
8.6.2 Table 8 regardless the fact that it is implementation-dependent.
>From the spec edition point of view, it would require a bit of
re-writing for the for-in statement semantics algorithm.

I have noticed that there is no mention of this internal method in
Allen's resource
For the record, this internal method is "called" in (at least I haven't
found any other place):
* 12.6.4 The for-in Statement (twice)
* Object.defineProperties
* Object.keys
* (Indirect) 15.12.3 JSON.stringify
"The ordering of the Strings should be the same as that used by the
Object.keys standard built-in function."

It would probably help to define more easily how proxies reify
Object.keys. The 'enumerate' trap would just reify this new internal
method ( [[enumerate]]? ) and as such there would be no need to modify
the for-in statement definition as it is in

move to ES6 draft

In ES6 this is the [[Enumerate]] internal method