js中splice函數(shù)的強(qiáng)大之處
語(yǔ)法:
var ele = arr.splice(index, deletedCount, insert1, insert2, insert3....);
參數(shù)說(shuō)明:
index :操作的其實(shí)位置
deletedCount:從index位置開(kāi)始一共要?jiǎng)h除的個(gè)數(shù)
insert1, insert2, insert3....:刪除后,從index位置開(kāi)始插入的系列項(xiàng)
============
插入項(xiàng)可以沒(méi)有呆躲,指標(biāo)是刪除
例子
var lang = ["php","java","javascript", "java","javascript"];
console.log(lang)
console.log("===========以上原始============")
//刪除
var removed = lang.splice(1,2); //下標(biāo)1尊残,刪除2個(gè)
console.log(lang); //php
console.log(removed); //java, javascript 返回刪除的項(xiàng)
console.log("============以上刪除操作===========")
//插入 (最后面添加)
var insert = lang.splice(3, 2, "asp", "asp", "asp"); //從第3個(gè)位置俊鱼,刪2個(gè)鸿捧,插入"asp", "asp", "asp"
console.log(insert); //返回空數(shù)組
console.log(lang); //asp,php,javascript
console.log("============以上插入操作===========")
//插入 (中間操作)
var insert = lang.splice(3, 3, "asp", "asp", "asp"); //從第3個(gè)位置嗤军, 刪3個(gè)靶瘸,插入 "asp", "asp", "asp"
console.log(insert); //返回空數(shù)組
console.log(lang); //asp,php,javascript
console.log("============以上插入操作===========")
// 替換
var replace = lang.splice(1,4,"c#","ruby"); //刪除4項(xiàng)寝优,插入兩項(xiàng)
console.log(lang); //asp,c#,ruby
console.log(replace); //php,返回刪除的項(xiàng)
console.log("============以上刪除操作===========")
效過(guò)
image.png