JS刪除陣列元素並更新length

2022-06-27 17:03:12 字數 973 閱讀 3868

說明:js 刪除陣列元素的方法有兩種,delete arr[i] 或 arr.splide(i, 1)

一、區別

delete 控制代碼只是清空元素記憶體,陣列索引及長度都保留,例如:

let arr = [0, 1, 2, 3, 4, 5];

delete arr[1];

console.log( arr[1] ); //

undefined

console.log( arr.length ); //

6

splice 方法會刪除元素,並更新陣列索引及長度,例如:

let arr = [0, 1, 2, 3, 4, 5];

arr.splice(1, 1);

console.log( arr[1] ); //

2console.log( arr.length ); //

5

二、迴圈刪除多個元素的方法

根據上述,我們知道要刪除陣列元素,應該要用 splice 方法,但 splice 會更新陣列索引,在刪除多個元素的時候,有點麻煩,例如:

//

刪除 2 和 4 元素

let arr = [0, 1, 2, 3, 4, 5];

arr.splice(2, 1);

//由於陣列索引已更新,所以刪除4不能用 arr.splice(4, 1)了,要用 arr.splce(3,1)

arr.splice(3, 1);

console.log( arr );

迴圈刪除操作:

let offset = 0; //

索引偏移值

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

for (let i=0, len=arr.length; i)

}console.log(arr);

完。

js刪除陣列元素

方法 array.remove dx 功能 刪除陣列元素.引數 第乙個引數是說明第二個引數的型別,index 表示第二個引數是元素下標,element 表示第二個引數是要刪除的元素 返回 在原陣列上修改陣列 刪除陣列元素,第乙個引數是說明第二個引數的型別,index 表示第二個引數是元素下標,ele...

JS刪除陣列元素

js刪除陣列元素 view plaincopy to clipboardprint?1.delete方法 delete arr 1 這種方式陣列長度不變,此時arr 1 變為undefined了,但是也有好處原來陣列的索引也保持不變,此時要遍歷陣列元素可以才用 for index in arr do...

JS刪除陣列指定元素

為 array.prototype.indexof function val return 1 code from array.prototype.remove function val var emp abs dsf sdf fd emp.remove fd 為 array.prototype.i...