chrome で見つけました。for in ループのすべてのステップが表示されません。たとえば、chrome または chrome canary のデバッガーを使用して、行にブレーク ポイントを設定します。
for (var i in stuff)
次のコードを一時停止し、次の行までステップ インをクリックします。
return n;
for in ループが 1 回で終了することがわかります。for in ループのプロセス全体を見たいと思います。問題は次のとおりです。クロムのループ内でjavascriptのすべてのステップを表示するにはどうすればよいですか?
function objectPlus(o, stuff) {
var n;
function F() {}
F.prototype = o;
n = new F();
n.uber = o;
for (var i in stuff) {
// I found in debuger, for in loop will finish in one step into,so you can't see the process of every property copy
n[i] = stuff[i];
}
return n;
}
var shape = {
name: 'shape',
toString: function() {
return this.name;
}
};
var twoDee = objectPlus(shape, {
name: '2D shape',
toString: function() {
return this.uber.toString() + ', ' + this.name;
}
});