本篇内容主要讲解“ES6数组复制和填充方法之如何使用copyWithin()、fill()”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ES6数组复制和填充方法之如何使用copyWithin()、fill()”吧!
批量复制 copyWithin()
语法
array.copyWithin(target, start, end)
参数:
参数 | 描述 |
---|
target | 必需。复制到指定目标索引位置。 |
start | 可选。元素复制的起始位置。 |
end | 可选。停止复制的索引位置 (默认为 array.length)。如果为负值,表示倒数。 |
返回值:返回复制之后的数组
代码实例:
// 复制数组的前面两个元素到后面两个元素上:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.copyWithin(2, 0);//Banana,Orange,Banana,Orange
// 复制数组的前面两个元素到第三和第四个位置上:
var fruits = ["Banana", "Orange", "Apple", "Mango", "Kiwi", "Papaya"];
fruits.copyWithin(2, 0, 2);//Banana,Orange,Banana,Orange,Kiwi,Papaya
填充数组方法 fill()
fill() 方法用于将一个固定值替换数组的元素。
语法:
array.fill(value, start, end)
参数:
参数 | 描述 |
---|
value | 必需。填充的值。 |
start | 可选。开始填充位置。 |
end | 可选。停止填充位置 (默认为 array.length) |
返回值:数组
代码实例:
//填充 "Runoob" 到数组的最后两个元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.fill("Runoob", 2, 4);//[ "Banana", "Orange", "Runoob", "Runoob" ]
//使用固定值填充数组:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.fill("Runoob");//Runoob,Runoob,Runoob,Runoob
关于索引的计算方式,两种方法相同
代码实例:
const zeroes = [0,0,0,0,0];
//用6填充索引大于等于3的元素
zeroes.fill(6, 3);//[0,0,0,6,6]
zeroes.fill(0);//重置
//用7填充索引大于等于1且小于3的元素
zeroes.fill(7,1,3);//[0,7,7,0,0]
zeroes.fill(0);//重置
//用8填充索引大于等于1且小于4的元素
//(-4+zeroes.length=1) (-1+zeroes.length=4)
zeroes.fill(8,-4,-1);//[0,8,8,8,0]
//索引过低,忽略
zeroes.fill(1,-10,-6);//[0,0,0,0,0]
//索引过高,忽略
zeroes.fill(1,10,15);//[0,0,0,0,0]
//索引反向,忽略
zeroes.fill(2,4,2);//[0,0,0,0,0]
//索引部分可用,填充可用部分
zeroes.fill(4,3,10);//[0,0,0,4,4]
到此,相信大家对“ES6数组复制和填充方法之如何使用copyWithin()、fill()”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!