每次看到slice()方法和splice方法时,都会一脸懵逼。所以,不得不迫使我对它们进行些整理,相信大家也有和我一样的吧,希望这篇整理可以帮助到大家。下面先来解释下官方对于这俩方法的定义,看看它们到底是做什么的。
array.slice(start,end)
参数start是截取的开始数组索引,end参数等于你要取得最后一个字符的位置+1
例:
//如果不传入参数二,那么将从参数一的索引位置开始截取,一直到数组尾
var a=[1,2,3,4,5,6];
var b=a.slice(0,3); //[1,2,3]
var c=a.slice(3); //[4,5,6]
//如果两个参数中的任何一个是负数,array.length会和它们相加,试图让它们成为非负数,举例说明:
//当只传入一个参数,且是负数时,length会与参数相加,然后再截取
var a=[1,2,3,4,5,6];
var b=a.slice(-1); //[6]
//当只传入一个参数,是负数时,并且参数的绝对值大于数组length时,会截取整个数组
var a=[1,2,3,4,5,6];
var b=a.slice(-6); //[1,2,3,4,5,6]
var c=a.slice(-8); //[1,2,3,4,5,6]
//当传入两个参数一正一负时,length也会先于负数相加后,再截取
var a=[1,2,3,4,5,6];
var b=a.slice(2,-3); //[3]
//当传入一个参数,大于length时,将返回一个空数组
var a=[1,2,3,4,5,6];
var b=a.slice(6); //[]
array.splice(separator,limit【可选】)
//一个简单的例子
var a="0123456";
var b=a.split("",3); //b=["0","1","2"]