共同点:均是删除数组元素并返回结果。
区别:splice会改变原数组,而slice不会。并且splice会导致数组塌陷。
数组塌陷:使用splice删除元素时,剩余的数组元素索引的顺讯会改变。
let ary = [10,20,30] for(let i=0;i<ary.length;i++) { splice(i,1); } console.log(ary);//20
删除第一个元素时,后面元素的索引会提前导致原来20的索引从1变成0,导致没有删除20这个元素,这就是数组塌陷。
共同点:均是删除数组元素并返回结果。
区别:splice会改变原数组,而slice不会。并且splice会导致数组塌陷。
数组塌陷:使用splice删除元素时,剩余的数组元素索引的顺讯会改变。
let ary = [10,20,30] for(let i=0;i<ary.length;i++) { splice(i,1); } console.log(ary);//20
删除第一个元素时,后面元素的索引会提前导致原来20的索引从1变成0,导致没有删除20这个元素,这就是数组塌陷。