js刪除陣列中的元素delete和splice的區別

時間 2021-07-08 21:18:38

1樓:珞硃砂

splice刪除後將返回一個新陣列,包含被刪除的元素, delete則返回布林值。splice刪除元素的同時會縮短原陣列長度,delete只是刪除元素,並不會修改陣列長度。splice可以批量刪除多個連續的元素,delete只能逐一刪除。

方法一:delete 刪除陣列,delete textarr[1]  結果為: [ "a",undefined,"c","d"]  ,只是被刪除的元素變成了 undefined 其他的元素的鍵值還是不變。

方法二:aplice 刪除陣列,splice(index,len,[item])    註釋:該方法會改變原始陣列。

index:陣列開始下標        len: 替換/刪除的長度       item:

替換的值,刪除操作的話 item為空。textarr.splice(1,1);  結果為:

["a","c","d"] 直接刪除了陣列 改變了陣列的值。

陣列物件splice方法:arr.splice(1,1);這種方式陣列長度相應改變,但是原來的陣列索引也相應改變,splice引數中第一個1,是刪除的起始索引(從0算起),在此是陣列第二個元素第二個1,是刪除元素的個數,在此只刪除一個元素,即'b';此時遍歷陣列元素可以用普通遍歷陣列的方式,比如for,因為刪除的元素在陣列中並不保留。

2樓:黑馬程式設計師

1、delete方法:delete arr[1]這種方式陣列長度不變,此時arr[1]變為undefined了,但是也有好處原來陣列的索引也保持不變,此時要遍歷陣列元素可以才用

2、陣列物件splice方法:arr.splice(1,1);

這種方式陣列長度相應改變,但是原來的陣列索引也相應改變splice引數中第一個1,是刪除的起始索引(從0算起),在此是陣列第二個元素

第二個1,是刪除元素的個數,在此只刪除一個元素,即'b';

此時遍歷陣列元素可以用普通遍歷陣列的方式,比如for,因為刪除的元素在

陣列中並不保留。

3樓:好程式設計師

delete和splice都可以刪除陣列中的元素,但是有些區別的,我舉具體的例子給你看,你看後就明白了。

例如有一個陣列是 :var textarr = ['a','b','c','d'];

這時我想刪除這個陣列中的b元素:

方法一:delete 刪除陣列

delete textarr[1] 結果為: [ "a",undefined,"c","d"]

只是被刪除的元素變成了 undefined 其他的元素的鍵值還是不變。

方法二:aplice 刪除陣列

splice(index,len,[item]) 註釋:該方法會改變原始陣列。

index:陣列開始下標 len: 替換/刪除的長度 item:替換的值,刪除操作的話 item為空

textarr.splice(1,1); 結果為: [ "a","c","d"] 直接刪除了陣列 改變了陣列的值。

js中刪除陣列元素的幾種方法

js中刪除陣列元素的問題

4樓:

var arr = new array("日期","電商","其他",);

var rearr = arr.splice(0,1);  // 刪除bai從位置0開始du的1個元素

console.log(arr)

詞直接內用英文寫array delete,看容看這裡的陣列操作教程網頁連結

5樓:匿名使用者

var ary = [1,2,3,4];

ary.splice(0,1);

或 ary.splice($.inarray(2, ary), 1); 其中$.inarray(2, ary)用來查詢某元素在陣列中的版索引位置權。

js刪除陣列中重複的值,js 中如何去掉陣列中的重複的資料

例如 var student qiang ming tao li liang you qiang tao 第一種思路是 遍歷要刪除的陣列arr,把元素分別放入另一個陣列tmp中,在判斷該元素在arr中不存在才允許放入tmp中 用到兩個函式 for in 和 indexof 第二種思路是 把目標陣列a...

php程式設計 如何刪除陣列中元素為某一值的所有項 這些值可能重複

我感覺蘋果應該保留!那就直接 array flip array flip array1 如果蘋果不保留,那就 search keys array keys array1,蘋果 foreach search keys as key print r array1 unset有一個不好的地方那就是他不能重...

js中刪除節點的問題

飛雲祥 你沒有操作對。div.childnodes.length 5 div.childnodes 3 才能選到 h1 元素標籤 div.removechild div.childnodes 3 加入想用div.childnodes 1 選中h1的話,html中的div需要如下寫,不要有換行,才可以...