猿问

原生js关于数组的问题

Array.apply(null, Array(100)).map(function(item, i) {

    console.log(item,i)

    return i+1;

});

可以循环打印item i

Array(100).map(function(item,i){

    console.log(item,i)

})


// (100) [undefined × 100]

还是会循环undefined

Array.apply(null,100)不是也是生成一个长度为100的数组吗?

在控制台输出会有一点的差别 但是这两种声明方式都是生成了两个长度为100的数组

aluckdog
浏览 491回答 1
1回答

慕盖茨4494581

new Array(100).map(function(item,index){    console.log(item,index)})不会有任何的输出。只有一个返回值。创建了一个稀疏数组,在数组中没有存储值,并且索引属性还未定义,所以没有index。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答