es6 數組實例中的find() 和 findIndex() 方法.md


es6 對數組擴展了兩個查找用的方法 1.find() find()方法用於找出第一個符合條件的數組成員,他的參數是一個回調函數,所有數組成員一次執行這個回調函數,知道找出第一個返回值為true的成員,然后返回該成員,如果沒有符合條件的成員,就返回undefined 例:找出數組中小於0的成員

[1,2,-4,6].find((n) =>  n < 0)
// -4
```‘

```javascript
[1,5,15,20,25].find((value,index,arr) => {
    return value > 20;
})    // 25

上面代碼中,find方法接受是三個參數,依次為當前成員,當前位置和原數組。

2.findIndex() findIndex()的方法與find()類似,返回第一個符合條件的數組成員的位置,如果所有的成員都不符合條件,就返回-1

[5,10,15,20].findIndex((value,index,arr) => {
    return value > 10
})  // 2

find()和findIndex()這兩個方法都可以接受第二個參數,用來綁定回調函數this對象 另外,這兩個方法都可以發現NaN,你補了數組的indexOf方法的不足

[NaN].indexOf(NaN)  // -1
 
[1,NaN].findIndex(n => Object.is(NaN,n) )    // 1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM