1. 程式人生 > 其它 >js陣列常用方法

js陣列常用方法

splice()

向/從陣列中新增/刪除專案,然後返回被刪除的專案。

該方法會改變原始陣列

splice(index,0,howmany,item1, ..., itemX)

第一個引數定義了應新增新元素的位置(拼接)。

第二個引數定義應刪除多少元素。

其餘引數(“Lemon”,“Kiwi”)定義要新增的新元素。

splice()方法返回一個包含已刪除項的陣列:

刪除指定元素:

var index = this.indexOf(val);

if (index > -1) {

this.splice(index, 1);

}

獲取陣列中物件所在的索引值:

let data = [{

id:1,

name:"小紅"

},{

id:2,

name:"小明"

}];

data.indexOf(data.filter(d=>d.id == 1)[0]) //index:0

concat(val1,val2)

通過合併(連線)現有陣列來建立一個新陣列:

concat()方法不會更改現有陣列。它總是返回一個新陣列。

concat()方法可以使用任意數量的陣列引數:

例如:

var myGirls = ["Cecilie", "Lone"];

var myBoys = ["Emil", "Tobias", "Linus"];

var myChildren = myGirls.concat(myBoys); // 連線 myGirls 和 myBoys

獲取陣列並集、交集、差集

// 並集

let union = a.concat(b.filter(v => !a.includes(v))) // [1,2,3,4,5]

// 交集

let intersection = a.filter(v => b.includes(v)) // [2]

// 差集

let difference = a.concat(b).filter(v => a.includes(v) && !b.includes(v)) // [1,3]

slice()

用陣列的某個片段切出新陣列。

可接受兩個引數,比如 (1, 3)。([1,3))

該方法會從開始引數選取元素,直到結束引數(不包括)為止。

註釋:slice()方法不會改變原始陣列。

filter()

返回陣列中所有符合條件的元素

filter() 方法建立一個新的陣列,新陣列中的元素是通過檢查指定陣列中符合條件的所有元素。

注意:filter() 不會對空陣列進行檢測。

注意:filter() 不會改變原始陣列。

引數為一個返回Boolean值的回撥函式

map()

map() 方法返回一個新陣列,陣列中的元素為原始陣列元素呼叫函式處理後的值。

map() 方法按照原始陣列元素順序依次處理元素。

注意:map() 不會對空陣列進行檢測。

注意:map() 不會改變原始陣列。

arr.map(item => {

item = ‘asd’

return item

})

find()

方法返回符合條件的第一個元素

當陣列中的元素在測試條件時返回true時, find() 返回符合條件的元素,之後的值不會再呼叫執行函式。

如果沒有符合條件的元素返回 undefined

注意:find() 對於空陣列,函式是不會執行的。

注意:find() 並沒有改變陣列的原始值。

本文來自部落格園,作者:懶得想名字丶丶,轉載請註明原文連結:https://www.cnblogs.com/wywblogs/p/15403437.html