ES6為Array增加了find(),findIndex函數。
find()函數用來查找目標元素,找到就返回該元素,找不到返回undefined。
findIndex()函數也是查找目標元素,找到就返回元素的位置,找不到就返回-1。
他們的都是一個查找回調函數。
[1, 2, 3, 4].find((value, index, arr) => {})查找函數有三個參數。
value:每一次迭代查找的數組元素。
index:每一次迭代查找的數組元素索引。
arr:被查找的數組。
例:
1.查找元素,返回找到的值,找不到返回undefined。
const arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]var ret1 = arr1.find((value, index, arr) => { return value > 4})var ret2 = arr1.find((value, index, arr) => { return value > 14})console.log('%s', ret1)console.log('%s', ret2)結果:
undefined
2.查找元素,返回找到的index,找不到返回-1。
var ret3 = arr1.findIndex((value, index, arr) => { return value > 4})var ret4 = arr1.findIndex((value, index, arr) => { return value > 14})console.log('%s', ret3)console.log('%s', ret4)結果:
4
-1
3.查找NaN。
const arr2 = [1, 2, NaN, 4, 5, 6, 7, 8, 9, 10, 11]var ret5 = arr2.find((value, index, arr) => { return Object.is(NaN, value)})var ret6 = arr2.findIndex((value, index, arr) => { return Object.is(NaN, value)})console.log('%s', ret5)console.log('%s', ret6)結果:
NaN
2
總結
以上所述是小編給大家介紹的ES6中Array.find()和findIndex()函數的用法詳解,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!
新聞熱點
疑難解答