js陣列批量刪除遇到的坑

2021-10-10 16:29:28 字數 1213 閱讀 7704

var data =

["a"

,"b"

,"c"

,"d"

,"e"

,"f"

,"g"];

data.

splice(1

,1);

console.

log(data)

;

上面這段**表示刪除了b元素

控制台列印:[「a」,「c」,「d」,「e」,「f」,「g」],成功刪除了b元素,這種是單刪除

要是批量刪除呢!

var data =

["a"

,"b"

,"c"

,"d"

,"e"

,"f"

,"g"];

for(

var a=

0;aconsole.

log(data)

;

上面這段**表示想要刪除b和c元素

但是控制台列印:[「a」, 「c」, 「d」, 「e」, 「f」, 「g」],發現c沒被刪除掉。

原因是:執行一次splice,原陣列就被更改過了,索引陣列的索引重新排列整齊,這樣我們記錄的老的排列索引就對不上了。

var data =

["a"

,"b"

,"c"

,"d"

,"e"

,"f"

,"g"];

for(

var a=data.length-

1;a>=

0;a--)}

console.

log(data)

;

控制台輸出:[「a」, 「d」, 「e」, 「f」, 「g」],成功批量刪除了b和c

var data =

["a"

,"b"

,"c"

,"d"

,"e"

,"f"

,"g"];

data = data.

filter

(item=>item!==

"b"&& item!==

"c")

;console.

log(data)

;

控制台輸出:[「a」, 「d」, 「e」, 「f」, 「g」],成功批量刪除了b和c

js陣列刪除

陣列刪除 刪除的陣列的某一項 splice index,len,item 注釋 該方法會改變原始陣列。splice有3個引數,它也可以用來 替換 刪除 新增陣列內某乙個或者幾個值 index 陣列開始下標 len 替換 刪除的長度 item 替換的值,刪除操作的話 item為空 如 arr a b ...

js 陣列刪除

1 delete 使用 delete 只是將陣列物件清空,但是仍然佔位存在 所以查到是undefined 如果是刪除陣列中的某個屬性,弊端是 陣列長度不變 var obj new object obj username username console.log obj.username delete...

批量刪除遇到的問題 我是菜鳥

寫了乙個批量刪除的操作,一開始對vue不是很熟悉,所以上網查詢各種api 1.實現按鈕操作 這是 裡面定義的 selection change handleselectionchange 就是checkbox可以多選 vue給我的驚喜太大,不用寫複雜的邏輯判斷就可以直接用.2.刪除按鈕 刪除 3.分...