2024-05-10 js 常用陣列方法
技术开发-陈伟健發表於2024-05-10
- push():向陣列的末尾新增一個或多個元素,並返回新的長度。
- pop():刪除並返回陣列的最後一個元素。
- shift():刪除並返回陣列的第一個元素。
- unshift():向陣列的開頭新增一個或多個元素,並返回新的長度。
- splice():透過刪除或替換現有元素或者新增新元素來修改陣列,並以陣列形式返回被修改的內容。
- slice():返回一個新的陣列物件,這一物件是一個由開始到結束(不包括結束)選擇的、由原陣列的淺複製構成。原始陣列不會被改變。
- concat():用於合併兩個或多個陣列。此方法不會更改現有陣列,而是返回一個新陣列。
- join():將一個陣列(或一個類陣列物件)的所有元素連線成一個字串並返回這個字串。
- reverse():顛倒陣列中元素的順序。
- sort():對陣列的元素進行排序,並返回陣列。預設排序順序是根據字串Unicode碼點。
- indexOf() 和 lastIndexOf():搜尋陣列中的某個元素,並返回其索引。indexOf() 從頭開始搜尋,lastIndexOf() 從尾開始搜尋。
- fill():用一個固定值填充一個陣列中從起始索引到終止索引內的全部元素。不包括終止索引。
- find():返回陣列中滿足提供的測試函式的第一個元素的值。否則返回 undefined。
- findIndex():返回陣列中滿足提供的測試函式的第一個元素的索引。否則返回 -1。
- forEach():對陣列的每個元素執行一次提供的函式。
- map():建立一個新陣列,其結果是該陣列中的每個元素都呼叫一個提供的函式後返回的結果。
- filter():建立一個新陣列, 其包含透過所提供函式實現的測試的所有元素。
- some() 和 every():some() 測試陣列中是不是至少有1個元素透過由提供的函式實現的測試;every() 測試陣列的所有元素是否都透過了由提供的函式實現的測試。
- reduce() 和 reduceRight():reduce() 對累加器和陣列中的每個元素(從左到右)應用一個函式,將其減少為單個輸出值;reduceRight() 從右到左應用函式。
- includes():判斷一個陣列是否包含一個指定的值,根據情況,如果需要搜尋的是 NaN,則使用 Number.isNaN() 或 isNaN() 函式來比較。
- entries()、keys() 和 values():用於遍歷陣列。它們都返回一個新的陣列迭代器物件,該物件包含陣列中每個索引的鍵/值對。
- copyWithin():在當前陣列內部,將指定範圍的元素複製到另一個指定位置,並返回這個陣列。不會改變原陣列的長度。
- flat() 和 flatMap():flat() 方法會按照一個可指定的深度遞迴遍歷陣列,並將所有元素與遍歷到的子陣列中的元素合併為一個新陣列返回。flatMap() 方法首先使用對映函式對映每個元素,然後將結果壓縮成一個新陣列。