本文系统介绍JavaScript中数组的常用操作方法,涵盖push、pop、unshift、shift等增删元素方法,以及concat合并、reverse翻转、sort排序、join转换和slice截取等。重点解析splice方法的删除、插入与替换功能,并说明各方法是否修改原数组及返回值特性,帮助开发者高效处理数组数据。
1、push
该方法用于在数组末尾追加一个或多个元素。
var arr = [1,2,3,4];
arr.push(5);
console.log(arr);// [1, 2, 3, 4, 5]
arr.push(6,7);
console.log(arr);//[1, 2, 3, 4, 5, 6, 7]
2、pop
用于移除数组最后一个元素,并返回被移除的元素值。
var arr = [1,2,3,4];
console.log(arr.pop());// 4
console.log(arr); // [1,2,3]
3、unshift()
该方法用于在数组头部插入一个或多个元素,执行后返回新数组的长度。
var arr = [4,5,6,7];arr.unshift(2,3) console.log(arr); // [2, 3, 4, 5, 6, 7] arr.unshift(1) console.log(arr); // [1, 2, 3, 4, 5, 6, 7] var arr = [4,5,6,7];
arr.unshift(2,3)
console.log(arr); // [2, 3, 4, 5, 6, 7]
arr.unshift(1)
console.log(arr); // [1, 2, 3, 4, 5, 6, 7]
4、shift()
用于移除数组第一个元素,并返回被移除的元素值。
var arr = [4,5,6,7];
console.log(arr.shift()); //4
console.log(arr); //[5, 6, 7]
5、concat()
用于合并两个或多个数组,生成一个新数组,原数组保持不变。
var abb = [1,2,3]
var arr = [4,5,6,7];
console.log(abb.concat(arr)); // [1, 2, 3, 4, 5, 6, 7]
6、reverse()
用于将数组元素顺序反转,此操作会直接修改原数组。
var arr = [1,2,3];
console.log(arr.reverse()); // [3, 2, 1]
console.log(arr); // [3, 2, 1]
7、sort( )
用于对数组元素进行排序。默认情况下按字符串Unicode码点升序排列,且会直接修改原数组。可通过传入比较函数实现数值升序或降序排序。
var arr = [1,3,8,2,5]
console.log(arr.sort()); // [1, 2, 3, 5, 8] 默认是从小到大排序
arr.sort(function fn(a,b){ // 升序
return a-b
})
console.log(arr); // [1, 2, 3, 5, 8]
arr.sort(function fn(a,b){ // 降序
return b-a
})
console.log(arr); // [8, 5, 3, 2, 1]
8、join()
用于将数组所有元素连接成一个字符串,默认使用逗号分隔,也可指定分隔符。该方法不会改变原数组。
var arr = [1,2,3,4,5]
console.log(arr.join()); // 1,2,3,4,5 默认是以逗号分割
console.log(arr.join('-')); // 1-2-3-4-5 可以在括号内定义用什么分割
console.log(arr); // [1, 2, 3, 4, 5]
9、slice()
用于从数组中截取指定范围的元素,返回新数组,原数组保持不变。参数包括起始索引和可选的结束索引(不包含)。
console.log(arr.slice(4)); // [5] 从下标为4的位置开始到最后一个结束
console.log(arr.slice(2,4));// [3, 4] 从下标为2的位置开始到4结束、但不包括下标为4 的值
console.log(arr); // [1, 2, 3, 4, 5]
10、splice()
该方法用于修改数组,支持删除、插入或替换元素,会直接改变原数组。返回值是被删除的元素组成的数组。
var arr = [1,2,3,4,5,6,7]
// 删除
console.log(arr.splice()); // [] 没穿参数返回空数组
console.log(arr.splice(4)); // [5, 6, 7] 从下标4开始删除到末尾,返回被删除的值
console.log(arr.splice(4,2));// [5, 6] 第二个参数是删除多少
console.log(arr);
// 插入
// 第一个参数是从什么位置开始,第二个是移除几个,第三个以后是添加的内容
console.log(arr.splice(1,0,3));// [] 返回空数组
console.log(arr); // [1, 3, 2, 3, 4, 5, 6, 7]
console.log(arr.splice(1,0,3,4));// [1, 3, 4, 2, 3, 4, 5, 6, 7]
总结
本文就到这里了,希望能够给你带来帮助,也希望您能够多多关注本站的更多内容!