重要的 JavaScript 數組方法:映射(),forEach(),減少(),過濾器(),排序(),包括(),查找(),索引的(),一些(),連接()
數組方法在 JavaScript 中是不可或缺的,并且有許多數組方法。對于忙碌的初學者,我選擇了10種最常見的數組方法,您必須學習這些方法以節省時間。
我為每個數組方法提供了一個示例用例,以便于理解。
陣列映射()
通過調用回調函數,map() 方法循環訪問原始數組,并對數組的每個元素調用該函數。由于它是一種非突變方法,因此它會創建一個新數組,并且不會更改原始數組。簡而言之,當您要轉換數組中的所有值時,會使用它。
示例用例
您有一個客戶列表,您有他們的名字,并且您希望將每個客戶的姓氏設置為“Smith”。
Array.forEach()
這與 map() 方法非常相似,它也在每個元素上執行一次函數,除了它改變了原來的數組,它不會創建一個新的數組。
示例用例
您希望打印列表中每個客戶的姓名,并且不需要新陣列。
數組.reduce()
Reduce 是最強大和最靈活的方法,因為它可用于重新實現所有現有的數組方法,但它也是最難理解的。
reduce 方法接受兩個參數:回調和初始值 (),回調采用 4 個參數、累加器、當前值、當前索引和初始值。簡而言之,此方法將數組簡化為返回一個值。arr.reduce(callback, initialValue
由于討論 reduce() 方法的所有好處需要一篇單獨的文章,因此我在這里只討論兩個代表性的用例。
示例用例
在沒有初始值的情況下計算總和
2. 拼合數組
數組過濾器()
顯然,當您需要過濾掉值時,會使用 filter() 方法。只需將測試函數作為回調傳遞,它將返回一個等于 true 的值以保留元素。
示例用例
您想從客戶列表中刪除特定客戶,例如瑪麗。因此,在回調中,您保留每個不等于瑪麗的名字。
數組.排序()
方法名稱本身就說明了這一點,它用于對數組進行排序。
示例用例
您有一個列出每個客戶的年齡的數組,您希望按升序對其進行排序。
請注意,使用 array.sort() 而不帶回調將產生不同的結果,該結果僅引用第一個數字進行排序,而不引用實際值。
Array.includes()
includes() 方法通過獲取值來確定數組是否包含某些元素。它返回一個布爾值。
示例用例
您想知道數組中是否包含 Mary。
陣列查找()
使用 find() 方法,我們能夠在數組中搜索某些內容。它采用一個測試函數,并返回提供的數組中與條件匹配的第一個元素。換句話說,它不會返回滿足測試的所有元素。
示例用例
您需要獲取長度為四個字母的客戶名稱。
數組索引()
這是在數組中搜索某些內容的另一種方法,但這次它返回索引。如果在數組中找不到該元素,則返回 -1。
示例用例
你想檢查Jane是否在你的客戶名單上,這樣你就可以給她定制折扣。
數組.一些()
some() 方法測試數組中是否至少有一個元素與特定條件匹配。它與 include 方法不同,因為它需要條件或測試函數,但不需要值。如果滿足條件,則返回 true,否則為 false。
示例用例
當您想要檢查是否至少有一個客戶的名字以“s”開頭時,請使用此方法。
Array.concat()
當您想要合并兩個或多個數組時,將使用 contact() 方法。
示例用例
您有兩個數組,一個包含男性客戶,另一個包含女性客戶,現在您要合并這些數組,以便一個數組包含所有客戶。