循環遍歴for...Inとfor...ofの違い
6070 ワード
遍歴配列の違い遍歴配列varとletタイプの比較ここではletを使用して変数を宣言し、varを使用しないで、変数の昇格問題があります
for inを使用して巡回するのは現在の配列の下付き記号です
for ofを使用して現在のvalueを巡回します
var a = [ 1, 2, 3 ]
for (var i = 0 ; i < 3 ; i ++ ) {
setTimeout(function(){
console.log(i)
},0)
}
// 3 3 3
var a = [ 1, 2, 3 ]
for (let i = 0 ; i < 3 ; i ++ ) {
setTimeout(function(){
console.log(i)
},0)
}
// 0 1 2
for inを使用して巡回するのは現在の配列の下付き記号です
var a = [ 1, 2, 3 ]
for (let i in a) {
setTimeout(function(){
console.log(i) // 0 1 2
console.log(a[i]) // 1 2 3
},0)
}
for ofを使用して現在のvalueを巡回します
var a = [ 1, 2, 3]
for (let i of a) {
setTimeout(function () {
console.log(i) // 1 , 2 , 3
},0)
}