首頁 > web前端 > js教程 > JavaScript中陣列成員的新增、刪除介紹_javascript技巧

JavaScript中陣列成員的新增、刪除介紹_javascript技巧

WBOY
發布: 2016-05-16 16:23:22
原創
1714 人瀏覽過

JavaScript中,由於陣列長度是可變的,因此可以透過直接定義新的成員而將其新增至陣列:

複製程式碼 程式碼如下:

var o = [2,3,5];
o[3] = 7;
console.log(o);//[2,3,5,7]

除了這個方法,還可以透過使用push()語句來達到相同的目的:
複製程式碼 程式碼如下:

o.push(11);
console.log(o);//[2,3,5,7,11]
o.push(13,17);
console.log(o);//[2,3,5,7,11,13,17]

如果需要在陣列開頭新增新的成員,可以使用unshift()語句:
複製程式碼 程式碼如下:

o.unshift(2014);
console.log(o);//[2014,2,3,5,7,11,13,17]
o.unshift(2013, 2012);
console.log(o);//[2013,2012,2014, 2,3,5,7,11,13,17]

與push()對應,如果需要從陣列結尾刪除一個成員,可以使用pop()語句,pop()語句將會傳回這個被刪除的成員,而陣列長度將會減少1:
複製程式碼 程式碼如下:

var p = o.pop();
console.log(p);//17
console.log(o.length);//9

與unshift()對應,如果需要從陣列開頭刪除一個成員,可以使用shift()語句,shift()語句將傳回這個被刪除的成員,而陣列長度將減少1:
複製程式碼 程式碼如下:

var s = o.shift();
console.log(s);//2013
console.log(o.length);//8


除了shift()語句和pop()語句,也可以透過delete運算子來刪除陣列中的成員。與shift()和pop()不同的是,delete操作後陣列的length屬性將保持不變,也即陣列將變得不連續。

JavaScript中也可以透​​過設定陣列的length屬性來對陣列進行修改:當length值小於陣列成員數時,JavaScript將對陣列進行截取;當length值大於陣列成員數時,JavaScript會將陣列變得不連續。如果length值只讀,那麼在陣列中直接定義新成員的操作將會失敗:


複製程式碼 程式碼如下:

console.log(o);//[2012,2014, 2,3,5,7,11,13]
o.length = 2;
console.log(o);//[2012,2014]
o.length = 4;
console.log(o);//[2012,2014,undefined,undefined]

var a = [1,2,3];
Object.defineProperty(a, "length", {writable:false});
a[3] = 4;
console.log(a);//[1,2,3]

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板