JavaScript 将数组项复制到另一个数组中
在本文中,我们将学习如何在JavaScript中将数组项复制到另一个数组中。当您想要创建一个包含现有数组中的相同或子集元素的新数组时,将数组项复制到另一个数组中非常有用。为此,有各种方法,如下所述:
- 使用扩展运算符(…)
- 使用slice()方法
- 使用apply()方法
- 使用Array.concat()方法
- 使用push()方法
- 使用map()方法
我们将探索每一种方法将数组项复制到另一个数组中,并了解它们的基本实现。
方法1:使用扩展运算符(…)
扩展运算符(…)是ES6中引入的一种简洁语法,允许我们将可迭代对象(如数组)展开为单独的元素。要使用扩展运算符复制数组,您只需将原始数组的元素展开到一个新的数组文字中。
语法:
const copiedArray = [...originalArray];
示例: 在这个示例中,我们将看到展开运算符的使用。
Javascript
const originalArray = [1, 2, 3, 4, 5];
const copiedArray = [...originalArray];
// Output: [1, 2, 3, 4, 5]
console.log(copiedArray);
输出
[ 1, 2, 3, 4, 5 ]
方法2:使用 slice() 方法
slice() 方法是 JavaScript 中的数组方法,它返回一个数组的某个部分的浅拷贝到一个新数组中。当没有任何参数调用时,可以用于复制整个数组。
语法:
const copiedArray = originalArray.slice();
示例: 在这个例子中,我们将看到slice()方法的使用。
JavaScript
const originalArray = [1, 2, 3, 4, 5];
const copiedArray = originalArray.slice();
// Output: [1, 2, 3, 4, 5]
console.log(copiedArray);
输出
[ 1, 2, 3, 4, 5 ]
方法3:使用apply()方法
apply()方法是一种较旧的复制数组的方法,但与扩展运算符和slice()方法相比,它使用较少。apply()方法调用具有给定值和参数数组的函数。要使用apply()复制数组,可以使用concat()方法和apply()将原始数组的元素连接到新数组中。
语法:
const copiedArray = Array.apply(null, originalArray);
示例: 在本示例中,我们将看到使用apply()方法的用法。
JavaScript
const originalArray = [1, 2, 3, 4, 5];
const copiedArray = Array.apply(null, originalArray);
// Output: [1, 2, 3, 4, 5]
console.log(copiedArray);
输出
[ 1, 2, 3, 4, 5 ]
方法4:使用Array.concat()方法
这种方法使用Array.prototype.concat()方法将源数组与一个空数组连接起来,该方法返回一个包含所有元素的新数组。
语法:
const newArray = [].concat(sourceArray);
示例: 在此示例中,我们将看到 Array.concat() 方法的使用。
Javascript
const sourceArray = [1, 2, 3, 4, 5];
const newArray = [].concat(sourceArray);
console.log(newArray);
输出
[ 1, 2, 3, 4, 5 ]
方法5:使用push()方法
在JavaScript中,使用push方法将数组项复制到另一个数组中,需要遍历给定的数组,并使用push方法将每个项添加到结果数组中
语法:
arr.push(element0, element1, … , elementN)
示例: 在这个示例中,我们使用push()方法将数组项复制到另一个数组中。
JavaScript
// Source array
let array1 = [10, 20, 30, 40, 50];
let result = [];
// Copy items from array1 to result using push()
for (let i = 0; i < array1.length; i++) {
result.push(array1[i]);
}
console.log(result);
输出
[ 10, 20, 30, 40, 50 ]
方法6:使用 map() 方法
JavaScript 的 map 方法 可以用来将数组项复制到另一个数组中。通过应用返回原始项的回调函数,创建一个包含复制项的新数组,
语法:
map(function (element) { /* … */ })
示例: 在这个示例中,我们使用map()方法将一个数组项复制到另一个数组中。
Javascript
const arr = [5, 10, 15, 20, 25];
const result = arr.map(item => item);
console.log(result);
输出
[ 5, 10, 15, 20, 25 ]