( 对于 ...在 ) 和 ( for...的 ) 语句?
2022-08-29 22:12:45
我知道什么是循环(它迭代键),但我第一次听说(它迭代值)。for... in
for... of
我对循环感到困惑。for... of
var arr = [3, 5, 7];
arr.foo = "hello";
for (var i in arr) {
console.log(i); // logs "0", "1", "2", "foo"
}
for (var i of arr) {
console.log(i); // logs "3", "5", "7"
// it doesn't log "3", "5", "7", "hello"
}
我理解迭代属性值。那么为什么它不记录而不是?for... of
"3", "5", "7", "hello"
"3", "5", "7"
与循环不同,循环循环遍历每个键 () 并同时循环访问键,而不循环访问属性的值,即 .为什么会这样?for... in
"0", "1", "2", "foo"
foo
for... of
foo
"hello"
这里我控制台循环。它应该记录,但它记录 .为什么?for... of
"3", "5", "7","hello"
"3", "5", "7"