When writing JavaScript, I often forget some properties of built-in objects and have to look them up in mdn, which is quite bothering since it slows down my work.
Instead of referring to documents, It is more convenient to create an object and use for ... in to inspect it with console.log(). But when it comes to non–enumerable properties, even for ... in won’t help.
So my question is, besides google and documents, is there any way to inspect non–enumerable properties?
for(var i in Object){
console.log([i,Object[i]]);
// ["wtbind", function()]
}
console.log(Object.hasOwnProperty('create'));
// true
// Here Object.create is a non–enumerable property,
// and I have to look it up in documents if I forget it.
This
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames
seems useful, although it is a rather recent addition and apparently doesn’t work in Opera. Although it only lists own properties, you can always climb up the prototype chain.