1. 程式人生 > 其它 >js篩選陣列中的元素;js將元素插入第一個位置;js陣列尋找下標findIndex;js的splice方法用於新增或刪除陣列中的元素

js篩選陣列中的元素;js將元素插入第一個位置;js陣列尋找下標findIndex;js的splice方法用於新增或刪除陣列中的元素

技術標籤:javascript

js篩選陣列中的元素

demo中就是將不等於1的元素篩選出來,返回一個新的陣列

//將陣列中為1的資料刪除生成新陣列
let simpleArr = list.filter((item, i) => {
	return item != 1;
})

js將元素插入第一個位置,類似進棧/出棧

你不僅可以 shift(移出)陣列中的第一個元素,你也可以 unshift(移入)一個元素到陣列的頭部。
.unshift() 函式用起來就像 .push() 函式一樣, 但不是在陣列的末尾新增元素,而是在陣列的頭部新增元素。

將元素插入到第一位

//data.data是一個數組
data.data.unshift(data.data.splice(index,1))

插入到最後一位也是同理

js陣列尋找下標findIndex

js這裡尋找下標是可以傳入一個函式的

w3c的demo還是挺清晰的

var ages = [3, 10, 18, 20];
 
function checkAdult(age) {
    return age >= 18;
}
 
function myFunction() {
    document.getElementById("demo").innerHTML = ages.findIndex(checkAdult)
; }
//其實可以更簡化
function myFunction() {
    document.getElementById("demo").innerHTML = ages.findIndex((item)=>item.age >= 18);
}

fruits 輸出結果:
2

js的splice方法用於新增或刪除陣列中的元素

splice() 方法用於新增或刪除陣列中的元素。

注意:這種方法會改變原始陣列。

如果僅刪除一個元素,則返回一個元素的陣列。 如果未刪除任何元素,則返回空陣列。

注意這裡splice返回的是一個數組

在這裡插入圖片描述
或者在刪除的同時新增元素
這裡要注意的是這裡的下標2是指的index=2下標之前的元素開始,所以後面刪除後新增元素也是在index=2的元素之前新增

簡單說刪除就是[x,y)前面是閉區間後面是開區間
新增則是在x之前的位置開始新增,新增可以新增一個數組進去

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,0,"Lemon","Kiwi");

fruits 輸出結果:

Banana,Orange,Lemon,Kiwi,Apple,Mango