ES6 for of 和 for in 的區(qū)別

1.for of 無(wú)法遍歷對(duì)象


var obj={

    name:"jack",

    age:18,

    weight:120

}

for(let i in obj){

    console.log(i,obj[i],"for in")

}

for(let j of obj){

    console.log(j,obj[j],"for of")

}

打印后提示 obj is not iterable

遍歷對(duì)象

2.遍歷輸出結(jié)果不同

for in 遍歷數(shù)組的索引,for of直接遍歷數(shù)組的值


var arr=["jack","nick","neo","leo"]

for(let i in arr){

    console.log(i)

}

console.log("----------------------------")

for(let j of arr){

    console.log(j)

}

遍歷數(shù)組

遍歷字符串

let name="jacky"
for(var i in name){
    console.log(i); 
}
console.log('----------------------');
for(var j of name){ 
    console.log(j);
}
遍歷字符串

3.for in 會(huì)遍歷自定義屬性,而for of不會(huì)

var arr = ["jack","nick","neo","leo"]

arr.name = "mike";

for(var i in arr){

    console.log(i,arr[i]);  

}

console.log('----------------------');

for(var j of arr){  

    console.log(j);

}

for in 輸出了name,而for of沒(méi)有輸出,可能是由于上面說(shuō)的for of無(wú)法輸出對(duì)象的原因?有錯(cuò)誤請(qǐng)大佬指出~謝謝!

遍歷自定義屬性
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容