极客时间返利平台,你可以在上边通过山月的链接购买课程,并添加我的微信 (shanyue94) 领取返现。

# Array(100).map(x => 1) 结果是多少

Issue

欢迎在 Gtihub Issue 中回答此问题: Issue 170 (opens new window)

Array(100) 将会创建一个稀疏数组 (sparse array),即不存在真实元素,节省内存空间。在控制台上显示为 [empty]

// [empty × 100]
Array(100);

正因为没有元素,所以它也不会有 map 操作,所以 Array(100).map(x => 1) 仍然返回为 [empty]

那如何生成 100 个元素为 1 的数组呢?

可以使用 Array.from

Array.from(Array(100), (x) => 1);

而在 ES5 中借用 apply

Array.apply(null, Array(100)).map((x) => 1);

根据楼下提示,再添加一个 fill

Array(100).fill(1);

那如何生成 100 个元素为 1 的数组呢?

Array(100).fill(1);
Last Updated: 11/27/2021, 6:11:48 PM