splice和slice是数组里的两个重要的方法,其splice和slice的区别为:1.splice改变原数组,slice不改变原数组。2.splice除了可以删除之外,还可以插入。3.splice可传入3个参数,slice接受2个参数。
splice主要能实现原数组的删除、替换、插入
// splice删除:
color.splice(1,2) //(删除color中的1、2两项);
// splice插入:
color.splice(1,0,‘yellow’,‘black’) //(在color键值为1的元素前插入两个值);
// splice替换:
color.splice(1,2,‘yellow’,‘black’) //(在color中替换1、2元素);
slice可以取出数组中的任意值,并返回一个新的数组
var a= color.slice(1,2) //(取出color中的1的值);
splice会改变原数组,他通过删除或者替换现有元素或者原地添加新的元素来修改数组,并且以数组形式返回被修改的内容。有三个参数:start,指定修改的开始位置,如果超出数组的长度,则从数组末尾开始添加;如果是负值,从数组末尾开始第几位;如果负数也大于数组的长度,则开始位置为0。deleteCount 可选参数,表述要移除的数组元素的个数。item1,item2,可选,表示要添加进数组的元素。splice 是数组的一个方法,使用这个方法会改变原来的数组结构,splice(index ,howmany , itemX);这个方法接受三个参数,我们在使用的时候可根据自己的情况传递一个参数,或两个参数,或者三个参数。
总结:splice()这个方法就是可以删除数组中的项,也可以向数组中添加新的项
slice返回由start和end决定的一个浅拷贝的新数组,原数组不会改变。有两个参数:
start,起始索引,从该索引提取原数组元素,如果是负数,则从末尾开始;如果省略start,则默认是数组的0下标开始end,结束索引,在该索引结束提取原数组元素,如果end被省略,slice会一直到末尾;如果end大于数组的长度,也会提取到数组末尾。
slice的用法:slice用于从指定值截取并返回新数组,但原数组结构不变。
arrayObject.slice(start,[end])起始值可以为负数,-1为最后一个,end选填,但取不到end坐标的值,实际返回的数组长度等于end-start。