JavaScript實(shí)現(xiàn)數(shù)組元素增減的方法示例
任務(wù)描述
本關(guān)任務(wù):掌握數(shù)組元素增減的方法。
相關(guān)知識(shí)
數(shù)組元素的增刪是JavaScript的一個(gè)特點(diǎn),因?yàn)槠渌芏嗑幊陶Z(yǔ)言的數(shù)組是不允許增加或者刪除元素的。
數(shù)組元素的增加
在JavaScript中,為數(shù)組增加元素可以在數(shù)組頭部(索引最小處)或者尾部進(jìn)行,可以使用數(shù)組的方法或者直接使用運(yùn)算符。
在尾部添加元素
最直觀的方法是直接給當(dāng)前尾部元素的后一個(gè)位置賦值。
var numberArray = [12,23,34,45]; numberArray[numberArray.length] = 56; console.log(numberArray);//輸出[12,23,34,45,56]
第二種方法是使用push()函數(shù),往數(shù)組的末尾添加一個(gè)或多個(gè)元素,參數(shù)是要添加的元素,返回?cái)?shù)組長(zhǎng)度。
//利用push()方法在數(shù)組尾部添加元素 var numberArray = [12,23,34,45]; var newLength = numberArray.push(56); console.log(newLength);//輸出5 console.log(numberArray);//輸出[12,23,34,45,56]
在頭部添加元素
unshift()方法在數(shù)組的頭部添加元素,并返回?cái)?shù)組新的長(zhǎng)度,其余元素自動(dòng)向索引大的方向移動(dòng)。
var sArray = ["ja","va","script"];
var newLength = sArray.unshift("he","llo");
console.log(newLength)//輸出5
console.log(sArray);//輸出["he","llo","ja","va","script"];數(shù)組元素的刪除
刪除也能在數(shù)組頭部(索引值?。┗蛘呶膊窟M(jìn)行。
在尾部刪除元素
上一關(guān)介紹過(guò)一種方法:直接修改數(shù)組長(zhǎng)度為更小的值。
var array = [1,2,true,"hello"]; array.length = 3;//索引最大的元素被刪除 console.log(array);//輸出[1,2,true]
第二種方法是使用delete運(yùn)算符。delete運(yùn)算符后接要?jiǎng)h除的元素,但是刪除后,會(huì)有一個(gè)空占位符,所以數(shù)據(jù)的長(zhǎng)度保持不變。如:
var dArray = [11,22,33,44,55]; delete dArray[4];//刪除索引最大的元素 console.log(dArray);//輸出[11,22,33,44] console.log(dArray.length); //長(zhǎng)度為5
第三種方法是使用pop(),一次刪除一個(gè),并返回被刪除的元素。
//利用pop()方法在數(shù)組尾部刪除元素 var numberArray = [3,4,5,6,7]; var deletedNumber = numberArray.pop(); console.log(deletedNumber);//輸出被刪除的元素7 console.log(numberArray);//刪除后的數(shù)組為[3,4,5,6]
在頭部刪除元素
有unshift(),自然有shift(),shift()的作用是刪除數(shù)組頭部一個(gè)元素并返回該元素,然后所有元素往索引值小的方向移動(dòng)一位。
初學(xué)者很容易混淆這兩個(gè)方法,建議記住shift單詞的意思是:刪除,去掉。
var dArray = [11,22,33,44,55]; console.log(dArray.shift());//輸出11,11被從數(shù)組中刪除 console.log(dArray);//輸出[22,33,44,55]
編程要求
本關(guān)的編程任務(wù)是補(bǔ)全右側(cè)代碼片段中begin至end中間的代碼,具體要求如下:
將數(shù)組
testArray的最后a個(gè)元素移動(dòng)到最前面,這a個(gè)元素之間的相對(duì)位置不變,其余元素之間的相對(duì)位置不變;比如將數(shù)組
[1,2,3,4,5]最后2個(gè)元素移動(dòng)到最前面,數(shù)組變?yōu)?code>[4,5,1,2,3];返回移動(dòng)結(jié)束后數(shù)組在索引
b處的元素;
var testArray = [12,"java","js","c","c++",24,36,"python","c#","css"];
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//請(qǐng)?jiān)诖颂幘帉懘a
/*********begin*********/
for (var i = 1; i <= a; i++){
testArray.unshift(testArray.pop());
}
return testArray[b];
/*********end*********/
}到此這篇關(guān)于JavaScript實(shí)現(xiàn)數(shù)組元素增減的方法示例的文章就介紹到這了,更多相關(guān)JavaScript數(shù)組元素增減內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS創(chuàng)建優(yōu)美的頁(yè)面滑動(dòng)塊效果 - Glider.js
JS創(chuàng)建優(yōu)美的頁(yè)面滑動(dòng)塊效果 - Glider.js...2007-09-09
javascript 小數(shù)取整簡(jiǎn)單實(shí)現(xiàn)方式
這篇文章主要介紹了javascript 小數(shù)取整d的簡(jiǎn)單實(shí)現(xiàn)方式,需要的朋友可以參考下2014-05-05
JavaScript實(shí)現(xiàn)仿網(wǎng)易通行證表單驗(yàn)證
這篇文章主要介紹了JavaScript實(shí)現(xiàn)仿網(wǎng)易通行證表單驗(yàn)證,十分的實(shí)用,有需要的小伙伴可以參考下。2015-05-05
JS實(shí)現(xiàn)定時(shí)頁(yè)面彈出類似QQ新聞的提示框
類似QQ新聞的提示框要求頁(yè)面每隔半小時(shí)彈出一次提示消息,下面有個(gè)不錯(cuò)的實(shí)現(xiàn)方法,感興趣的朋友可以參考下2013-11-11
JavaScript純前端實(shí)現(xiàn)語(yǔ)音播報(bào)和朗讀功能
這篇文章主要為大家詳細(xì)介紹了JavaScript純前端實(shí)現(xiàn)語(yǔ)音播報(bào)和朗讀功能的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
js實(shí)現(xiàn)拉伸拖動(dòng)iframe的具體代碼
這篇文章介紹了js實(shí)現(xiàn)拉伸拖動(dòng)iframe的具體代碼,有需要的朋友可以參考一下2013-08-08
被jQuery折騰得半死,揭秘為何jQuery為何在IE/Firefox下均無(wú)法使用
某學(xué)員前日實(shí)施一個(gè)Web項(xiàng)目實(shí)施發(fā)生了悲劇,找到我求解決,把我也折騰個(gè)半死。2010-01-01

