要给出Array.prototype.fill({})的引用,可以使用以下代码示例:
const arr = Array(5).fill({});
console.log(arr); // 输出:[ {}, {}, {}, {}, {} ]
在这个例子中,我们创建了一个长度为5的数组arr,并使用fill方法将每个元素都填充为一个空的对象{}。最后,我们打印出数组arr的内容,可以看到它包含了5个空的对象。
需要注意的是,使用fill方法填充数组时,填充的值是对原始值的引用。这意味着,如果我们修改了其中一个元素的属性,其他元素也会受到影响,因为它们引用的是同一个对象。
arr[0].name = 'John';
console.log(arr); // 输出:[ { name: 'John' }, { name: 'John' }, { name: 'John' }, { name: 'John' }, { name: 'John' } ]
在这个例子中,我们给数组arr的第一个元素添加了一个name属性,并将其设置为'John'。然后我们再次打印数组arr的内容,可以看到所有元素的name属性都被修改为'John'。这是因为它们引用的都是同一个对象。
如果你希望每个元素都是独立的对象,可以使用map方法来创建一个新的数组,每个元素都是一个新的对象。
const arr = Array(5).fill().map(() => ({}));
在这个例子中,我们使用fill方法填充一个数组,然后使用map方法遍历每个元素,并返回一个新的对象作为每个元素的值。这样就能确保每个元素都是独立的对象。