JavaScript 數(shù)組的常用方法find 和 filter詳解及區(qū)別介紹
find 和 filter 都是 JavaScript 數(shù)組的常用方法,用來查找符合條件的元素,但它們有一些關鍵的區(qū)別:
1.find方法
- 返回值:
find方法返回數(shù)組中 第一個符合條件的元素,如果沒有找到符合條件的元素,返回undefined。 - 用途:用于查找并返回第一個符合條件的元素。
- 結束早:一旦找到符合條件的元素,
find就會停止遍歷,并返回該元素。
語法:
const result = array.find(callback(element, index, array));
callback:是一個函數(shù),接受三個參數(shù)element、index和array。只要回調函數(shù)返回true,find就會返回該元素。
示例:
const arr = [1, 2, 3, 4, 5]; const result = arr.find(num => num > 3); console.log(result); // 4 (找到第一個大于 3 的數(shù))
2.filter方法
- 返回值:
filter方法返回一個 新數(shù)組,該數(shù)組包含了 所有符合條件的元素。如果沒有符合條件的元素,返回一個空數(shù)組。 - 用途:用于查找所有符合條件的元素并返回它們的數(shù)組。
- 不結束:即使找到了符合條件的元素,
filter會繼續(xù)遍歷數(shù)組中的所有元素。
語法:
const result = array.filter(callback(element, index, array));
callback:是一個函數(shù),接受三個參數(shù)element、index和array。只要回調函數(shù)返回true,filter就會將該元素放入新數(shù)組中。
示例:
const arr = [1, 2, 3, 4, 5]; const result = arr.filter(num => num > 3); console.log(result); // [4, 5] (所有大于 3 的數(shù))
主要區(qū)別總結:
- 返回結果:
find:返回 第一個符合條件的元素。filter:返回 所有符合條件的元素組成的新數(shù)組。
- 遍歷行為:
find:找到第一個符合條件的元素后就停止遍歷。filter:遍歷數(shù)組的每個元素,不會提前停止,返回符合條件的所有元素。
- 返回空值:
find:如果沒有符合條件的元素,返回undefined。filter:如果沒有符合條件的元素,返回空數(shù)組[]。
選擇使用哪個?
- 使用
find當你只關心找到 第一個匹配的元素 時。 - 使用
filter當你需要 所有匹配的元素 時。
希望這樣能幫你更好地理解這兩個方法的區(qū)別!
到此這篇關于JavaScript 數(shù)組的常用方法find 和 filter詳解及區(qū)別介紹的文章就介紹到這了,更多相關js find 和 filter 方法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- JS中filter( )數(shù)組過濾器的使用
- JavaScript遍歷數(shù)組的三種方法map、forEach與filter實例詳解
- JavaScript 數(shù)組some()和filter()的用法及區(qū)別
- JavaScript中find()、findIndex()、filter()、indexOf()處理數(shù)組方法的具體區(qū)別詳解
- js 數(shù)組 find,some,filter,reduce區(qū)別詳解
- JS中的常見數(shù)組遍歷案例詳解(forEach,?map,?filter,?sort,?reduce,?every)
- JavaScript數(shù)組常用方法find、findIndex、filter、map、flatMap及some詳解
- JavaScript數(shù)組方法push()、forEach()、filter()、sort()實戰(zhàn)教程
相關文章
javascript forEach通用循環(huán)遍歷方法
循環(huán)遍歷一個元素是開發(fā)中最常見的需求之一,那么讓我們來看一個由框架BASE2和Jquery的結合版本吧.2010-10-10
Markdown與Bootstrap相結合實現(xiàn)圖片自適應屬性
Markdown 是一種輕量級的標記語言,它的優(yōu)點很多,目前也被越來越多的寫作愛好者,撰稿者廣泛使用。接下來通過本文給大家介紹Markdown與Bootstrap相結合實現(xiàn)圖片自適應屬性,感興趣的朋友一起學習吧2016-05-05
通過高德地圖API獲得某條道路上的所有坐標用于描繪道路的方法
這篇文章主要介紹了通過高德地圖API獲得某條道路上的所有坐標用于描繪道路的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-08-08
Ext JS 實現(xiàn)建議詞模糊動態(tài)搜索功能
這篇文章主要介紹了Ext JS 實現(xiàn)建議詞模糊動態(tài)搜索功能,需要的朋友可以參考下2017-05-05
JavaScript使用IEEE 標準進行二進制浮點運算產(chǎn)生莫名錯誤的解決方法
javascript做帶小數(shù)的計算時,會出現(xiàn)9的循環(huán),以下方法幫助解決。2011-05-05
微信小程序實現(xiàn)指定顯示行數(shù)多余文字去掉用省略號代替
這篇文章主要介紹了微信小程序實現(xiàn)指定顯示行數(shù)多余文字去掉用省略號代替的方法,需要的朋友可以參考下2018-07-07

