yuiblogの記事for in
で、Douglas Crockfordは、ステートメントがオブジェクトのメソッドを反復処理すると述べています。次のコードが["a"、 "b"、 "c"、 "d"、 "toString"]を生成しないのはなぜですか?.toString()およびその他のメソッドはmy_objのメンバーではありませんか?
Object.prototype.toString = function(){return 'abc'}
Object.prototype.d = 4;
my_obj = {
'a':1,
'b':2,
'c':3
}
a = []
for (var key in my_obj) {
a.push(key)
}
console.log(a) // prints ["a", "b", "c", "d"]