splice和slice均是Array对象的方法。
splice:意思为胶接,该方法返回被删除元素组成的数组,并且会改变原数组,语法为
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
参数:
start:开始删除的位置(从0开始计数);
deleteCount:删除的个数;
item1...:从start位置依次开始添加的元素;
返回值:
被删除元素组成的数组,没有删除则为空数组。
对应题解:从位置1开始删除2个元素,并添加进“3,4,5”这几个元素,所以原数组变成了[1,3,4,5,4,5],返回[2,3]
2. slice:切割,该方法返回被提取出来的元素组成的数组,但不会改变原数组,语法为
arr.slice([begin[, end]])
参数:
begin和end分别为提取的起始位置(含)和截止位置(不含) ,均从0开始。
对应题解:从位置1(含)开始提取到位置2(不含),提出来的数组为[2],五个参数中的后三个为多余的参数,会被忽略。
选C
问题一:[1,2,3,4,5].slice(1,2,3,4,5)
slice方法实现了从原数组中截取一部分返回新的数组
slice(start, end)不包含end,如果start,end为负数则表示从数组最后一个索引向前计算\
返回值:所截取的数组对象
所以问题一的结果为[2].
问题二:[1,2,3,4,5].splice(1,2,3,4,5)
splice方法实现了从原数组中删除或插入一部分内容
splice(index, howmany, item1, ...itemx )
index表示从当前索引开始删除,
howmany代表删除元素的个数
items 要添加到索引的新元素
返回值:如果从原数组中删除了元素,则但返回含有被删除的数组对象
所以问题二的结果为[2,3]