4个常用的 JS 数组内容默认填充方法

方式一:使用Array.fill
const filledArray = Array(3).fill(0);filledArray; // [0, 0, 0]
const filledArray = Array(3).fill({ value: 0 });filledArray; // [{ value: 0 }, { value: 0 }, { value: 0 }]
const filledArray = Array(3).fill({ value: 0 });filledArray; // [{ value: 0 }, { value: 0 }, { value: 0 }]filledArray[1].value = 3;filledArray; // [{ value: 3 }, { value: 3 }, { value: 3 }]
方式二:使用Array.from()
const filledArray = Array.from(Array(3), () => {return { value: 0 };});filledArray; // [{ value: 0 }, { value: 0 }, { value: 0 }]filledArray[1].value = 3;filledArray; // [{ value: 0 }, { value: 3 }, { value: 0 }]
方式三:使用展开操作符...加array.map()
const sparseArray = Array(3);sparseArray; // [empty × 3]
const filledArray = [...Array(3)].map(() => {return { value: 0 };});filledArray; // [{ value: 0 }, { value: 0 }, { value: 0 }]filledArray[1].value = 3;filledArray; // [{ value: 0 }, { value: 3 }, { value: 0 }]
方式四:使用Array.apply()加array.map()
Array.apply(null, Array(3))
Array.apply(null, [, , ,])
const filledArray = Array.apply(null, Array(3)).map(() => {return { value: 0 };});filledArray; // [{ value: 0 }, { value: 0 }, { value: 0 }]filledArray[1].value = 3;filledArray; // [{ value: 0 }, { value: 3 }, { value: 0 }]
结论
学习更多技能
请点击下方公众号 
评论
