方法一:
Array.fill
数组填充
Array.fill(value, start, end)
对于primitives(原始类型),请使用.fill:
let arr1 = Array(5) // 生成数组长度为 5 的空数组 [empty × 5]
arr1.fill(1) // 填充数组每一项
arr1 // [1, 1, 1, 1, 1]
arr1 .fill(7, 2, 4)
arr1 // [1, 1, 7, 7, 1]
对于non-primitives,不要使用fill,因为那时数组中的所有元素都将引用内存中的同一个对象,因此数组中一个项的突变将影响数组中的每个项。
方法二:
相反,在每次迭代时显式创建对象,可以用Array.from:
var fruits = Array.from(
{ length: 4 },
() => ({ Lemon: ‘Lemon’ })
);
console.log(fruits); [{Lemon: “Lemon”}, {Lemon: “Lemon”}, {Lemon: “Lemon”}, {Lemon: “Lemon”}]
方法三
使用Array构造函数:
let myArray = new Array(times).fill(elemnt)
方法四
Array.of
创建新数组
let arr = Array.of(1, 2, 3, 4, 5)
arr // [1, 2, 3, 4, 5]