拼接和切片的区别是什么?
const array = [1, 2, 3, 4, 5];
array.splice(index, 1);
array.slice(index, 1);
拼接和切片的区别是什么?
const array = [1, 2, 3, 4, 5];
array.splice(index, 1);
array.slice(index, 1);
当前回答
切片不改变原始数组,它返回新的数组,但拼接改变原始数组。
example: var arr = [1,2,3,4,5,6,7,8];
arr.slice(1,3); // output [2,3] and original array remain same.
arr.splice(1,3); // output [2,3,4] and original array changed to [1,5,6,7,8].
拼接方法的第二个参数不同于切片方法。在拼接中,第二个参数表示要删除的元素的计数,在切片中,它表示结束索引。
arr.splice(-3,-1); // output [] second argument value should be greater then
0.
arr.splice(-3,-1); // output [6,7] index in minus represent start from last.
-1代表最后一个元素,从-3到-1。 以上是拼接法与切片法的主要区别。
其他回答
S LICE =给出数组的一部分&没有分裂原始数组
SP LICE =给出数组的一部分&分裂原始数组
我个人觉得这更容易记住,因为这两个术语总是让我这个网页开发初学者感到困惑。
大多数答案都太啰嗦了。
拼接和切片返回数组中其余的元素。 拼接使被操作的数组发生突变,删除元素,而切片没有。
切片不改变原始数组,它返回新的数组,但拼接改变原始数组。
example: var arr = [1,2,3,4,5,6,7,8];
arr.slice(1,3); // output [2,3] and original array remain same.
arr.splice(1,3); // output [2,3,4] and original array changed to [1,5,6,7,8].
拼接方法的第二个参数不同于切片方法。在拼接中,第二个参数表示要删除的元素的计数,在切片中,它表示结束索引。
arr.splice(-3,-1); // output [] second argument value should be greater then
0.
arr.splice(-3,-1); // output [6,7] index in minus represent start from last.
-1代表最后一个元素,从-3到-1。 以上是拼接法与切片法的主要区别。
Splice()改变原始数组,而slice()不会,但它们都返回数组对象。
请看下面的例子:
var array=[1,2,3,4,5];
console.log(array.splice(2));
这将返回[3,4,5]。原始数组受到影响,导致数组为[1,2]。
var array=[1,2,3,4,5]
console.log(array.slice(2));
这将返回[3,4,5]。原始数组不受影响,导致数组为[1,2,3,4,5]。
下面是简单的小提琴,它证实了这一点:
/ /拼接 数组var =[1、2、3、4、5); console.log (array.splice (2)); / /片 var array2 =[1、2、3、4、5) console.log (array2.slice (2)); console.log(“——后——”); console.log(数组); console.log (array2);
/ /拼接 数组var =[1、2、3、4、5); console.log (array.splice (2)); / /片 var array2 =[1、2、3、4、5) console.log (array2.slice (2)); console.log(“——后——”); console.log(数组); console.log (array2);