js数组增、删元素的方法集锦

2,485 阅读2分钟

一、数组增加元素

1.push()方法

// 此方法直接在数组的末尾添加元素

let arr = [1,2];
arr.push(3,4,5);  // arr = [1,2,3,4,5]

2.unshift()方法

//此方法在数组的头部添加元素,并返回新数组的长度

let arr = [1,2];
let len = arr.unshift(0); // arr = [0,1,2]  len=3

3.splice(ind,len,item)方法

// splice(索引位置,要删除元素的数量,要增加的元素)

let arr = [1,2];
arr.splice(0, 1, 0); // 结果返回 arr = [0,2]
// 注意:此方法的第二个参数代表要删除元素的数量。如果要添加元素,那么第二个参数应为0 
arr.splice(1,0,1);  // arr = [0,1,2]

4.concat()方法

此方法将参数连接至末尾,并返回新数组,不改变原数组

let arr = [1,2];
let newArr = arr.concat(3,4,5);
console.log(arr, newArr);  // arr = [1,2],  newArr =[1,2,3,4,5]

此方法同样适用于连接多个数组

let arrA = [1,2];
let arrB = [3,4,5];
console.log(arrA.concat(arrB));  // arr = [1,2,3,4,5]

5.arr[arr.length] = 新元素的值;

很显然,此方法利用数组长度直接向数组末尾添加元素赋值,且经验证,这是最快的向数组末尾添加元素的方法。

 

二、数组删除元素

1.利用length属行可设置的特点

let arr = [0,1,2,3,4,5];
arr.lengh = 4; // arr = [0,1,2,3]

2.delete方法:删除掉数组中的元素后,会把该元素的值置为undefined,但数组长度不会改变;

let arr = [3,6,7,5,9];
delete arr[2];
console.log(arr, arr.length);    // [3,6,empty,5,9]   7
console.log(arr[2]);   // undefined

3.Array.shift()方法,删除数组第一项,并返回被删除元素的值,若数组为空,则返回undefined

let arr= [1,2,3,4,5];
let ele = arr.shift();  // arr = [2,3,4,5]  ele = 1

4.Array.pop()方法,删除数组最后一项,并返回被删除元素的值,若数组为空,则返回undefined

let arr= [1,2,3,4,5];
let ele = arr.pop();  // arr = [1,2,3,4]  ele = 5

5.Array.splice(index,length,[item])

// 参数释义:(索引位置, 要删除元素的数量, 元素) splice方法有三个参数,它可以用来替换/删除/添加数组内某一个或者几个值,该方法会改变原始数组的元素和长度。

let arr = [2,3,4,5,7,8,9];
// 删除元素,并且改变数组长度
arr.splice(0,2);  //从下标为0开始删除,删除的长度为2
console.log(arr);  // [4,5,7,8,9]

arr.splice(3);    //从下标为3开始删除
console.log(arr);  // [4,5,7,8]

6.用循环中的filter方法:filter创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,它不会改变原始数组

let arr = [3,4,5,6,7,8,9];
newArr = colors.filter(function(item) {
     return item >= 6
     });
 console.log(newArr);    //  newArr = [6,7,8,9]