数组操作使我们日常使用频率很高的一类方法,今天就数组的操作方法做一个总结。
数组的操作方法可以通过返回结果大体分为三类:
- 操作会改变原数组的值
- 操作不会改变原数组的值
- 数组的遍历方法
一、会改变原数组值的操作方法(共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]
总结:
- 数组如果元素不够,会删除到最后一个元素为止
- 操作的元素,包括开始的那个元素
- 可以添加很多个元素
- 添加是在开始的元素前面添加的
编程是一种修行,我愿与志同道合的朋友携手前行,一起探索有关编程的奥妙!
如果您在前端学习的过程中遇到难题,欢迎【关注】并【私信】我,大家一起交流解决!
文章推荐: