辨别JavaScript中slice与splice要领
slice()要领是从已有的数组中返回经由过程索引选定的元素。
- 语法:array.slice(startIndex,endIndex)
- 参数startIndex是划定从那边最先拔取。如果是负数,从数组尾部最先算肇端位置。即—1为倒数第一个元素。此参数是必须的。
参数endIndex是划定那边完毕拔取的。是可选的。
var arr = ['apple','banana','lemon','orane']; var arr1 = arr.slice(1,3); 效果: arr ["apple", "banana", "lemon", "orane"] arr1 ["banana", "lemon"]
注重:原数组并没有发作转变
splice()是向数组中增加或许删除元素,然后返回的是被删除的元素。
- 语法:array.splice(startIndex,howmany,item…)
- startIndex划定了增加或许删除元素的肇端位置。
howmany 要删除的元素的数目。如为0,不删除任何一项。
item 可选的,向数组中要增加的元素。
var arr = ['red','yellow','green'];
var newArr = arr.splice(0,2,'blue','white')
效果:
arr ["blue", "white", "green"]
newArr ["red", "yellow"]
删除的数目为0的状况:
var arr = ['red','yellow','green'];
var newArr = arr.splice(0,0,'blue','white')
效果:
arr ["blue", "white", "red", "yellow", "green"]
newArr []
**注重:原数组发作了转变。**
**返回的新数组为被删除的元素**