This is not an enumerated property. In modern JavaScript machines, you control this in your own objects, but it has always been so (well, maybe not for every interpreter) that "native" objects could "hide" properties from for ... in iterations.
You can read about Object.defineProperty() in MDN . I'm not sure if the syntax (in Harmony) will mark properties as non-enumerable in object literals.
source share