Subj : Re: Enumerating standard class properties & methods To : Sterling Bates From : Brendan Eich Date : Wed Dec 17 2003 10:51 am Sterling Bates wrote: > Just to press the point, though, none of the implementations are strictly > equivalent to the ECMA spec. What do you mean? The ECMA-262 Edition 3 spec allows extensions (see Chapter 16), so don't count those as "non-standard". Any deviations from explicit normative ("must", "should") specs are a different issue. Those would be bugs, and we test, track, and fix them. Having no spec is bad; having a spec we extend is good; flouting the spec is bad. There may be a handful of cases where we depart from the spec for good, well-considered backward compatibility reasons. Those too are different. Enumerating objects with for..in was always meant to skip "built-in" or "system pre-defined" functions and other properties, enumerating only user-defined properties. That's just the way JS is. If you need to enumerate all properties, you'll have to do something extra. /be .