在阅读 vue 教程时,发现一段代码:
render: function (createElement) {
return createElement('div',
Array.apply(null, { length: 20 }).map(function () {
return createElement('p', 'hi')
})
)
}
好奇其中的 Array.apply(null, {length: 20}) 是什么意思
经查证得知,Array.apply(null, {length: 20}) 会创建一个每个值都初始化为 undefined ,长度为20的数组;而 Array(20) 只会创建一个长度为20的空数组。
此处用 Array.apply(null, args) 是因为 map 不会遍历数组中没有被初始化或者被 delete 的元素,(forEach reduce 同样适用)。
网友评论