1.slice()
从原数组中截取一段元素到新的数组中,其格式为arr.slice(start,end),其中所截取的元素不包括end那个元素。例如
var arr=[1,2,3,4,5]
var newArr=arr.slice(0,3)
console.log(newArr)//1,2,3
注意:slice()方法不会改变原数组
2.splice()
用于向数组中添加或者删除元素,并返回被删除的元素,第一个参数表示插入或者删除的数组元素位置,第二个元素表示要删除的元素数
var arr = [1, 2, 3, 4, 5]
var newArr = arr.splice(0, 2)
console.log(arr); //[3,4,5]
console.log(newArr); //[1,2]
当只有一个参数时:表示截取该参数数值之后的数组元素组成新数组
var arr = [1, 2, 3, 4, 5]
var newArr2 = arr.splice(3)
console.log(arr); //[1,2,3]
console.log(newArr); //[4,5]
当多个参数时:第一个参数表示截取多少个元素,后面其它元素会添加到截取出来元素的后面
var arr = [1, 2, 3, 4, 5]
var newArr3 = arr.splice(4, 2, 'a', 'b', 'c')
console.log(arr); //[
1, 2, 3, 4,
'a', 'b', 'c'
]
console.log(newArr3);//[ 5 ]
3.简析它们的区别
slice()不修改原数组,返回原始数组的子集,用于从数组中截取元素 ,而splice()修改原数组,将删除的元素作为数组返回,用于在数组中插入或者修改元素。