十個你必須要知道的重要JavaScript 數(shù)組方法
數(shù)組方法在 JavaScript 中是必不可少的,數(shù)組方法有很多。對于忙碌的初學者,我選擇了 10 種最常見的數(shù)組方法,你必須學習它們,這些可以幫助你提升學習效率,節(jié)省時間。
為了便于理解,我為每個數(shù)組方法提供了一個示例用例。
1、Array.map()
通過調(diào)用回調(diào)函數(shù),map() 方法循環(huán)遍歷原始數(shù)組并在數(shù)組的每個元素上調(diào)用該函數(shù)。由于它是一種非變異方法,因此它會創(chuàng)建一個新數(shù)組并且不會更改原始數(shù)組。簡而言之,當你想要轉(zhuǎn)換數(shù)組中的所有值時使用它。
示例用例?
如果有一個客戶列表,你有他們的名字,并且你想將每個客戶的姓氏設置為“Smith”。
2、Array.forEach()
這與 map() 方法非常相似,它也對每個元素執(zhí)行一次函數(shù),除了它在原地改變原始數(shù)組,它不會創(chuàng)建新數(shù)組。
示例用例?
如果你想打印列表中每個客戶的姓名,并且不需要新數(shù)組。
3、Array.reduce()
Reduce 是最強大和最靈活的方法,因為它可以用來重新實現(xiàn)所有現(xiàn)有的數(shù)組方法,但它也是最難理解的。
reduce方法接受兩個參數(shù):一個回調(diào)和一個初始值(arr.reduce(callback, initialValue),回調(diào)有4個參數(shù),累加器、當前值、當前索引和初始值。簡單來說,這個方法減少了數(shù)組返回一個值。
由于討論 reduce() 方法的所有好處需要單獨寫一篇文章,因此,我將在這里僅討論兩個具有代表性的用例。
示例用例?
1)計算沒有初始值的總和
2)展平數(shù)組
4、Array.filter()
顯然,當你需要過濾掉值時,會使用 filter() 方法。只需將測試函數(shù)作為回調(diào)傳遞,它將返回一個等于 true 的值以保留元素。
示例用例?
你想從客戶列表中刪除特定客戶,例如 Mary。因此,在回調(diào)中,你保留所有不等于 Mary 的名稱。
5、Array.sort()
方法名稱不言自明,它用于對數(shù)組進行排序。
示例用例?
你有一個列出每個客戶年齡的數(shù)組,你希望按升序?qū)ζ溥M行排序。
請注意,使用不帶回調(diào)的 array.sort() 將產(chǎn)生不同的結(jié)果,該結(jié)果僅根據(jù)第一個數(shù)字進行排序,而不是實際值。
6、Array.includes()
includes() 方法通過取值來確定數(shù)組是否包含某些元素。它返回一個布爾值。
示例用例?
如果你想知道 Mary 是否包含在數(shù)組中。
7、Array.find()
使用 find() 方法,我們可以在數(shù)組中搜索某些內(nèi)容。它接受一個測試函數(shù),并返回提供的數(shù)組中與條件匹配的第一個元素。換句話說,它不會返回所有滿足測試的元素。
示例用例?
如果你需要獲得一個長度為四個字母的客戶名稱。
8、Array.indexOf()
這是另一種在數(shù)組中搜索內(nèi)容的方法,但這次它返回索引。如果在數(shù)組中沒有找到該元素,則返回 -1。
示例用例?
如果你想檢查 Jane 是否在你的客戶列表中,以便你可以為她提供定制的折扣。
9、Array.some()
some() 方法測試數(shù)組中是否至少有一個元素與特定條件匹配。它與 include 方法不同,因為它需要條件或測試功能,但不需要值。如果條件滿足則返回真,否則返回假。
示例用例?
當你要檢查是否至少有一個客戶的名字以“s”開頭時,使用此方法。
10、Array.concat()
當你想要合并兩個或多個數(shù)組時使用contact() 方法。
示例用例?
如果你有兩個數(shù)組,一個包含男性客戶,另一個包含女性客戶,現(xiàn)在,你想要合并這些數(shù)組,以便一個數(shù)組包含所有客戶。
這就是這個話題。感謝您的閱讀。