splice():删除、插入和替换
1、删除:指定 2 个参数:要删除的第一项的位置和要删除的项数。
书写格式:arr.splice( 0 , 2 )
2、插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。
书写格式:arr.splice( 2,0,4,6 )
3、替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。
书写格式:arr.splice( 1,1,2,3 )
例子:
var arr = [1,3,5,7,9,11]; var arrRemoved = arr.splice(0,2); console.log(arr); //[5, 7, 9, 11] console.log(arrRemoved); //[1, 3] var arrRemoved2 = arr.splice(2,0,4,6); console.log(arr); // [5, 7, 4, 6, 9, 11] console.log(arrRemoved2); // [] var arrRemoved3 = arr.splice(1,1,2,4); console.log(arr); // [5, 2, 4, 4, 6, 9, 11] console.log(arrRemoved3); //[7]
此外介绍用了两个数组方法,即pop()和unshift(),用splice实现
第一个:pop(),取出数组中的最后一项。
Array.prototype.pop2 = function () { //数组中的最后一项 var res = this[this.length - 1]; //原数组去掉数组中的最后一项 this.splice(this.length - 1, 1); return res }
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9] var res = arr.pop2(); alert(res) //9 alert(arr) //[1,2,3,4,5,6,7,8]
第二个:unshift,取出数组中的第一项。
Array.prototype.unshift2 = function () { //数组中的第一项 var res = this[0]; //原数组去掉第一项 this.splice(0, 1); return res }
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9] var res = arr.unshift2(); alert(res) //1 alert(arr) //[2,3,4,5,6,7,8,9]
标签:arr,console,splice,res,js,数组,var From: https://www.cnblogs.com/xiaoeshuang/p/17030626.html