javascript - nodejs的列表不能往中間插入數(shù)據(jù)嗎?
問題描述
Python中的列表可以在中間位置插入數(shù)據(jù):
>>> a = [1, 2, 3, 4, 5, 6, 7]>>> a[1, 2, 3, 4, 5, 6, 7]>>> a.insert(3,10)>>> a[1, 2, 3, 10, 4, 5, 6, 7]
但是nodejs中好像沒有insert函數(shù),刪除中間的元素也不徹底,
> a= [1, 2, 3, 4, 5, 6][ 1, 2, 3, 4, 5, 6 ]> delete a[2]true> a[ 1, 2, , 4, 5, 6 ]
如果希望刪除a[2]后得到新的列表為[1,2,4,5,6,7],應(yīng)該怎么做?
如果希望在第3個(gè)位置后插入數(shù)據(jù)10,得到[1,2,3,10,4,5,6],應(yīng)該怎么做?
問題解答
回答1:

a.splice(2,1);a.splice(3,0,10);回答3:
樓上正解
a.splice(2,1); //從a數(shù)組中第3個(gè)元素(下標(biāo)2)開始刪除,刪掉一個(gè)。 這時(shí)a數(shù)組會(huì)發(fā)生變化a.splice(3,0,10); //從a數(shù)組中第4個(gè)(下標(biāo)3)元素開始刪除,刪除0個(gè), 并把10插入到這個(gè)元素之前。附splice用法
splice() 方法向/從數(shù)組中添加/刪除項(xiàng)目,然后返回被刪除的項(xiàng)目。注釋:該方法會(huì)改變?cè)紨?shù)組。
語法arrayObject.splice(index,howmany,item1,.....,itemX)
index 必需。整數(shù),規(guī)定添加/刪除項(xiàng)目的位置,使用負(fù)數(shù)可從數(shù)組結(jié)尾處規(guī)定位置。
howmany 必需。要?jiǎng)h除的項(xiàng)目數(shù)量。如果設(shè)置為 0,則不會(huì)刪除項(xiàng)目。
item1, ..., itemX 可選。向數(shù)組添加的新項(xiàng)目。
返回值Array 包含被刪除項(xiàng)目的新數(shù)組,如果有的話。
說明splice() 方法可刪除從 index 處開始的零個(gè)或多個(gè)元素,并且用參數(shù)列表中聲明的一個(gè)或多個(gè)值來替換那些被刪除的元素。如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數(shù)組。
回答4:開來樓主還不知道splice的強(qiáng)大。splice(start,deleteCount,val1,val2,...):從start位置開始刪除deleteCount項(xiàng),并從該位置起插入val1,val2,... 可以自己擴(kuò)展Array的原型方法:
Array.prototype.insert = function (index, item) { this.splice(index, 0, item); };
這樣你就熟悉了
相關(guān)文章:
1. 關(guān)于docker下的nginx壓力測試2. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””3. mac里的docker如何命令行開啟呢?4. docker - 各位電腦上有多少個(gè)容器啊?容器一多,自己都搞混了,咋辦呢?5. nignx - docker內(nèi)nginx 80端口被占用6. docker容器呢SSH為什么連不通呢?7. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。8. 如何解決Centos下Docker服務(wù)啟動(dòng)無響應(yīng),且輸入docker命令無響應(yīng)?9. docker start -a dockername 老是卡住,什么情況?10. dockerfile - 我用docker build的時(shí)候出現(xiàn)下邊問題 麻煩幫我看一下

網(wǎng)公網(wǎng)安備