push()
方法将一个或多个元素添加到数组的末尾,并返回新的长度。
let arr = [1, 2, 3];
arr.push(4); // arr 现在是 [1, 2, 3, 4]
arr.push(5, 6); // arr 现在是 [1, 2, 3, 4, 5, 6]
unshift()
方法将一个或多个元素添加到数组的开头,并返回新的长度。
let arr = [1, 2, 3];
arr.unshift(0); // arr 现在是 [0, 1, 2, 3]
arr.unshift(-1, -2); // arr 现在是 [-1, -2, 0, 1, 2, 3]
使用方括号索引
通过指定索引来直接修改或添加数组元素。但是,如果索引大于或等于数组的长度,那么新的元素会被添加到数组的末尾。如果索引不存在,那么该位置的元素会被设置为 undefined
。
let arr = [1, 2, 3];
arr[3] = 4; // arr 现在是 [1, 2, 3, 4]
arr[10] = 11; // arr 现在是 [1, 2, 3, 4, undefined, undefined, undefined, undefined, undefined, undefined, 11]
使用 splice()
方法
splice()
方法通过删除或替换现有元素或者添加新元素来修改数组,并以数组形式返回被修改的内容。虽然这主要用于删除或替换元素,但也可以用来添加元素。
let arr = [1, 2, 3];
arr.splice(3, 0, 4); // arr 现在是 [1, 2, 3, 4]
// 在索引3处开始,删除0个元素,并添加元素4
使用扩展运算符(...
)
ES6引入了扩展运算符,它可以用来合并数组。虽然这不是直接添加元素到现有数组的方法,但你可以用它来创建一个新数组,该数组包含原始数组的元素以及要添加的新元素。
let arr = [1, 2, 3];
let newArr = [...arr, 4]; // newArr 现在是 [1, 2, 3, 4]
使用 concat()
方法
concat()
方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
let arr = [1, 2, 3];
let newArr = arr.concat(4); // newArr 现在是 [1, 2, 3, 4],但 arr 仍然是 [1, 2, 3]
// 注意:这里的 4 会被当作一个只包含一个元素的数组 [4] 来处理
// 如果要添加多个元素,应该这样做:arr.concat(4, 5, 6)