今天在项目中遇到了一个关于数组截取的问题,记录如下:
关于slice的用法,总结如下:
![](https://i-blog.csdnimg.cn/blog_migrate/87eb52539ad263448c8231df82a1a1ee.png)
const newArr = [NaN,2,3,4,2,NaN,2,3];
var newPartArr = newArr.slice(1,4);
console.log(newPartArr);//[2,3,4]
console.log(newArr);//[NaN,2,3,4,2,NaN,2,3]
截取的返回值是新数组,但是对原数组没有影响。
MDN:slice()
方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。原始数组不会被修改。
![](https://i-blog.csdnimg.cn/blog_migrate/816eae9eb7568e272522671c68262b65.png)
var arr = newArr.slice(2);
console.log(arr);// [ 3, 4, 2, NaN, 2, 3 ]
顺带求和
![](https://i-blog.csdnimg.cn/blog_migrate/3d79617e384d86c31cb68fe9f7be6677.png)