拼接和切片的区别是什么?
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);
当前回答
切片和拼接紧密相连,但用途却截然不同:
slice函数用于选择数组的一部分。它的目的是返回值。它的执行并不影响它的主题。
splice函数用于从数组中删除元素。它的目的是修饰它的主题。如果需要,它仍然返回已删除项的副本,以供参考。
其他回答
两者都返回相同的答案,但是:
SPlice将改变原始数组。 Slice不会改变原始数组。
/ /拼接 数组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);
Slice()和Splice() javascript内置函数之间的区别是, Slice返回删除的项,但没有改变原始数组; 就像,
// (original Array)
let array=[1,2,3,4,5]
let index= array.indexOf(4)
// index=3
let result=array.slice(index)
// result=4
// after slicing=> array =[1,2,3,4,5] (same as original array)
但在splice()情况下,它会影响原始数组;就像,
// (original Array)
let array=[1,2,3,4,5]
let index= array.indexOf(4)
// index=3
let result=array.splice(index)
// result=[4,5]
// after splicing array =[1,2,3] (splicing affects original array)
Splice和Slice是内置的Javascript命令,而不是特定的AngularJS命令。Slice返回从“start”到“end”说明符之前的数组元素。Splice改变实际的数组,从“start”开始,并保持指定的元素数量。谷歌有很多这方面的信息,只要搜索。
slice()方法将数组部分的副本返回到新的数组对象中。
$scope.participantForms.slice(index, 1);
这不会改变participantForms数组,而是返回一个包含原始数组中索引位置上的单个元素的新数组。
splice()方法通过删除现有元素和/或添加新元素来更改数组的内容。
$scope.participantForms.splice(index, 1);
这将在索引位置从participantForms数组中删除一个元素。
这些是Javascript的原生函数,与AngularJS无关。