js splice

前端这点事 16 0

数组操作使我们日常使用频率很高的一类方法,今天就数组的操作方法做一个总结。

数组的操作方法可以通过返回结果大体分为三类:

操作会改变原数组的值操作不会改变原数组的值数组的遍历方法

一、会改变原数组值的操作方法(共9个)

1.splice ——删除、插入和替换

语法:array.splice(startIndex, deleteCount, item1, ... , item2);

参数描述:

startIndex必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字。

deleteCount必需。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。

item1, ... , item2可选。要添加到数组的新元素。

(1)删除 —— array.splice(startIndex, deleteCount);

删除数组中从startIndex(从0算起)起的deleteCount个元素,返回被删除的元素组成的数组,原数组为删除后剩下的元素组成的数组。

var arr = [1, 2, 3, 4, 5, 6]; // 返回的是被删除元素组成的数组 arr.splice(2, 4); // [3, 4, 5, 6] // 原数组被改变 arr; // [1, 2]

(2)插入——array.splice(startIndex, 0, item1, ... , item2);

在数组的startIndex(从0算起)处插入item1, ... item2,返回一个空数组(因为没有删除任何元素),原数组为插入元素后的新数组。

var arr = [1, 2, 3, 4, 5, 6]; // 返回一个空数组 arr.splice(2, 0, 9, 8, 7); // [] // 原数组为插入元素后的新数组 arr; // [1, 2, 9, 8, 7, 3, 4, 5, 6]

(3)替换——array.splcie(startIndex, deleteCount, item1, ..., item2);

删除数组中从startIndex(从0算起)起的deleteCount个元素并在startIndex处插入item1, ..., item2等元素,返回被删除的元素组成的数组,原数组为删除并插入新元素后的新数组。

var arr = [1, 2, 3, 4, 5, 6]; // 返回的是被删除元素组成的数组 arr.splice(2, 3, 9, 8, 7); // [3, 4, 5] // 原数组被改变 arr; // [1, 2, 9, 8, 7, 6]

其实,插入和替换可以看做是一个方法,原理相同。

再看一个例子:

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

总结:

数组如果元素不够,会删除到最后一个元素为止操作的元素,包括开始的那个元素可以添加很多个元素添加是在开始的元素前面添加的。

标签: JavaScript

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~