JavaScript 如何通过值复制数组
在本文中,我们将看到如何使用JavaScript创建数组的副本。JavaScript有各种方法可以克隆数组。
我们可以使用以下方法创建一个数组的副本:
- 使用Spread运算符
- 使用Array.from()方法
- 使用Array.slice()方法
- 使用structuredClone()方法
方法1:使用Spread运算符
使用Spread运算符…是在JavaScript中通过值复制数组的一种简洁而简单的方法。Spread运算符允许您将一个数组展开为单个元素,然后可以使用这些元素创建一个新的数组。
示例:
Javascript
const originalArr = [1, 2, 3, 4, 5, 6];
const clonedArr = [...originalArr];
console.log(clonedArr);
输出
[ 1, 2, 3, 4, 5, 6 ]
方法2:使用Array.from()方法
使用Array.from()方法是JavaScript中另一种按值复制数组的方式。该方法从现有数组创建一个新数组,使用一个可选的映射函数来转换新数组中的值。
例子:
JavaScript
const originalArr = [1, 2, 3, 5, 6, 4];
const clonedArr = Array.from(originalArr);
console.log(clonedArr);
输出
[ 1, 2, 3, 5, 6, 4 ]
方法3:使用Array.slice()方法
我们使用slice()方法来创建JavaScript中一个数组的副本,通过其值。这个方法通过使用原始数组的一部分元素创建一个新数组。
例子:
JavaScript
const originalArr = [1, 2, 3, 4, 5, 6];
const clonedArr = originalArr.slice();
console.log(clonedArr);
输出
[ 1, 2, 3, 4, 5, 6 ]
方法4:使用structuredClone()方法
我们还可以使用现代的structuredClone()方法来深度克隆一个数组。这可以通过使用structured clone算法来实现。
例子:
JavaScript
const arr = ["Geeksforgeeks","geek","GFG","geeks"];
const newArray = structuredClone(arr);
console.log(newArray);
输出:
['Geeksforgeeks', 'geek', 'GFG', 'geeks']