玖叶教程网

前端编程开发入门

JS中的Array.splice()和Array.slice()方法有什么区别?

例子

var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
arr.slice(2, 7); // 2,3,4,5,6
arr.splice(2, 7); // 2,3,4,5,6,7,8

第一个参数表示开始位置, 第二个表示截取到的位置(不包含该位置)

slice(start, end)

第一个参数开始位置, 第二个参数截取长度

splice(start, length)

例子


var x = y = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 x.slice(2, 5); //2,3,4

原数组并未改变

console.log(x);
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

接下来用同样方式测试splice

 y.splice(2, 5); //2,3,4,5,6

显示原数组中的数值被删掉了

 console.log(y); //[0,1,7,8,9]

总结:

slice和splice虽然都是对于数组对象进行截取,但是二者还是存在明显区别,函数参数上slice和splice第一个参数都是截取开始位置,slice第二个参数是截取的结束位置(不包含),而splice第二个参数(表示这个从开始位置截取的长度),slice不会对原数组产生变化,而splice会直接剔除原数组中的截取数据!

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言