這篇文章主要介紹es6新增的遍歷方法是什么,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
為淶水等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及淶水網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站制作、成都做網(wǎng)站、淶水網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
新增的遍歷方法有:1、findIndex(),可遍歷數(shù)組,查找匹配的元素;2、find(),可遍歷數(shù)組,查找第一個(gè)匹配的元素;3、entries(),對(duì)鍵值對(duì)進(jìn)行遍歷;4、keys(),對(duì)鍵名進(jìn)行遍歷;5、values(),對(duì)鍵值進(jìn)行遍歷。
本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。
ES5中常用的10種遍歷方法:
1、原始的for循環(huán)語(yǔ)句
2、Array.prototype.forEach數(shù)組對(duì)象內(nèi)置方法
3、Array.prototype.map數(shù)組對(duì)象內(nèi)置方法
4、Array.prototype.filter數(shù)組對(duì)象內(nèi)置方法
5、Array.prototype.reduce數(shù)組對(duì)象內(nèi)置方法
6、Array.prototype.some數(shù)組對(duì)象內(nèi)置方法
7、Array.prototype.every數(shù)組對(duì)象內(nèi)置方法
8、Array.prototype.indexOf數(shù)組對(duì)象內(nèi)置方法
9、Array.prototype.lastIndexOf數(shù)組對(duì)象內(nèi)置方法
10、for...in
循環(huán)語(yǔ)句
findIndex(callback [, thisArg])查找數(shù)組中匹配的元素
找到一個(gè)就返回匹配的元素的下標(biāo),沒(méi)找到就返回-1。 let arr = [1, 2, 3, 4, 5, 6]// 此時(shí)我們找大于2的數(shù) let newArr = arr.findIndex(val => {return val > 2}) console.log(newArr) // 2
find(fn(callback [, thisArg])
查找數(shù)組中匹配的元素,找到一個(gè)就返回匹配的元素,沒(méi)找到就返回undefined。
注:下面的例子相對(duì)于需求是一個(gè)錯(cuò)誤的示范,因?yàn)槲覀円页龃笥?的數(shù),當(dāng)找到匹配到3時(shí),滿足條件,函數(shù)就會(huì)停止。
例:
let arr = [1, 2, 3, 4, 5, 6] // 此時(shí)我們找大于2的數(shù) let newArr = arr.find(val => { return val > 2 }) console.log(newArr) // 3
entries() , keys() 和 values()
ES6 提供三個(gè)新的方法 —— entries(),keys()和values() —— 用于遍歷數(shù)組和對(duì)象。它們都返回一個(gè)遍歷器對(duì)象,可以用for...of
循環(huán)進(jìn)行遍歷,唯一的區(qū)別是keys()是對(duì)鍵名的遍歷、values()是對(duì)鍵值的遍歷,entries()是對(duì)鍵值對(duì)的遍歷。
for (let index of ['a', 'b'].keys()) { console.log(index); } // 0 // 1 for (let elem of ['a', 'b'].values()) { console.log(elem); } // 'a' // 'b' for (let [index, elem] of ['a', 'b'].entries()) { console.log(index, elem); } // 0 "a" // 1 "b"
如果不使用for...of循環(huán),可以手動(dòng)調(diào)用遍歷器對(duì)象的next方法,進(jìn)行遍歷。
let letter = ['a', 'b', 'c']; let entries = letter.entries(); console.log(entries.next().value); // [0, 'a'] console.log(entries.next().value); // [1, 'b'] console.log(entries.next().value); // [2, 'c']
以上是“es6新增的遍歷方法是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!