在 Javascript 中,Array.copyWithin() 方法用于将数组元素从指定数组中的一个位置复制到另一个位置。此方法在复制元素后返回修改后的数组。
copyWithin() 方法覆盖数组中的现有元素,而不改变其长度。此方法不会向数组中添加任何 “新” 项。
如果任何参数为负数,则索引将向后计数。例如,-1 表示最后一个元素,依此类推。
语法
以下是 Javascript Array.copyWithin() 方法的语法 -
copyWithin(target, start, end)
参数
此方法接受三个参数。下面描述相同 -
- target - 应将复制的元素粘贴到的索引。
- start - 复制应开始的索引(默认值为 0)。
- end (可选) − 复制应结束的索引(默认值为 array length)。
返回值
此方法返回包含复制元素的修改后的数组。
示例 1
在下面的示例中,我们将复制从索引 0 开始的元素,并使用 Javascript Array.copyWithin() 方法将它们从索引 3 开始放置它们 -
<html>
<body>
<script>
const array = ['apple', 'banana', 'cherry', 'date', 'grapes'];
array.copyWithin(3, 0);
document.write(array);
</script>
</body>
</html>
输出
apple,banana,cherry,apple,banana
示例 2
在下面的示例中,我们复制最后两个元素并将它们放置在索引 -3 处(从末尾开始计数)-
<html>
<body>
<script>
const array = ['apple', 'banana', 'cherry', 'date', 'grapes'];
array.copyWithin(-3, -2);
document.write(array);
</script>
</body>
</html>
输出
apple,banana,date,grapes,grapes
示例 3
在这里,我们将从索引 1 开始复制到索引 3 的元素,并将它们从索引 0 开始放置它们 -
<html>
<body>
<script>
const array = ['apple', 'banana', 'cherry', 'date', 'grapes'];
array.copyWithin(0, 1, 4);
document.write(array);
</script>
</body>
</html>
输出
banana,cherry,date,date,grapes