溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在Javascript中刪除數(shù)組

發(fā)布時(shí)間:2021-03-30 15:17:50 來(lái)源:億速云 閱讀:119 作者:Leah 欄目:web開(kāi)發(fā)

本篇文章給大家分享的是有關(guān)怎么在Javascript中刪除數(shù)組,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

Javascript刪除數(shù)組的方法:

1,delete方法:delete arr[1]

這種方式數(shù)組長(zhǎng)度不變,此時(shí)arr[1]變?yōu)閡ndefined了,但是也有好處原來(lái)數(shù)組的索引也保持不變,此時(shí)要遍歷數(shù)組元素可以才用

for(index in arr)
{
 document.write('arr['+index+']='+arr[index]);
}

這種遍歷方式跳過(guò)其中undefined的元素

2,數(shù)組對(duì)象splice方法:arr.splice(1,1);

這種方式數(shù)組長(zhǎng)度相應(yīng)改變,但是原來(lái)的數(shù)組索引也相應(yīng)改變

splice參數(shù)中第一個(gè)1,是刪除的起始索引(從0算起),在此是數(shù)組第二個(gè)元素

第二個(gè)1,是刪除元素的個(gè)數(shù),在此只刪除一個(gè)元素,即'b';

此時(shí)遍歷數(shù)組元素可以用普通遍歷數(shù)組的方式,比如for,因?yàn)閯h除的元素在

數(shù)組中并不保留

值得一提的是splice方法在刪除數(shù)組元素的同時(shí),還可以新增入數(shù)組元素

比如arr.splice(1,1,'d','e'),d,e兩個(gè)元素就被加入數(shù)組arr了

結(jié)果數(shù)組變成arr:'a','d','e','c' 

另外,JavaScript通過(guò)設(shè)置數(shù)組的length屬性來(lái)截?cái)鄶?shù)組,是惟一一種縮短數(shù)組長(zhǎng)度的方法。

如果使用delete運(yùn)算符來(lái)刪除數(shù)組中元素,雖然那個(gè)元素變成未定義的,但是數(shù)組的length屬性并不改變兩種刪除元素,數(shù)組長(zhǎng)度也改變的方法。

/*
  * 方法:Array.remove(dx)
  * 功能:刪除數(shù)組元素.
  * 參數(shù):dx刪除元素的下標(biāo).
  * 返回:在原數(shù)組上修改數(shù)組
*/
//經(jīng)常用的是通過(guò)遍歷,重構(gòu)數(shù)組.
Array.prototype.remove=function(dx)
{
if(isNaN(dx)||dx>this.length){return false;}
for(var i=0,n=0;i<this.length;i++)
{
if(this[i]!=this[dx])
{
this[n++]=this[i]
}
}
this.length-=1
 }
 a = ['1','2','3','4','5'];
 alert("elements: "+a+"nLength: "+a.length);
 a.remove(0); //刪除下標(biāo)為0的元素
 alert("elements: "+a+"nLength: "+a.length);


以上就是怎么在Javascript中刪除數(shù)組,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI