关于javascript数组的一个问题Array(3)与 Array(3).fill()的区别

关于javascript数组的一个问题:
有如下三个数组:

let arr1 = Array(3)  
let arr2 = [];  
arr2.length = 3;  
let arr3 = Array(3).fill()

arr1、arr2、arr3的区别是什么呢?
在浏览器的console面板中 arr1和arr2都显示如下图:
image.png
而 arr3显示如下:
image.png;

万望各位大侠解惑

阅读 551
评论
    3 个回答

    是这样的:
    arr1和arr2中的元素是empty:因为arr1和arr2只是定义了一个数组,这个数组中有3个元素而已,未做任何操作了。所以每个元素的值是空的了。
    arr3:因为fill方法就是用来填充数组元素的。如果你在fill('s')这样填充值了,那么数组元素里面就是你传的值s,如果不传值,就是undefined了。就和我们写一个方法 function test (n){console.log(n)} ,调用的时候test('s')一样 传参数了,打印出来的就是传递的参数,不传的话 打印出来就是默认值 undefined