0
for-inループで奇妙な動作があります。forループの奇妙な振る舞い
コード:私は、出力はこのようなSTHである必要があり、予想通り
var obj = {
q:1,
w:2,
e:4,
r:5
};
function test(data) {
for (key in data) {
//do sth;
}
}
!function() {
for (key in obj) {
console.log(key);
test({a:1,b:2,c:3});
console.log(key);
}
}();
:
qqwweerr
しかし、私はこの得た:
qcwcecrcを
I thを見つけることができませんこの動作の背後にある論理! キー変数は語彙的にスコープされています。 私のコードで何が問題になっていますか?
'let'または'あなたがそれらをしたいレベルでの任意の識別子をvar'することを忘れないでください –