var arr = new Array(3) // arr[1] = undefined; // arr[2] = undefined; arr[0] = 2 var result = arr.map(function (elem) { return '1' } ) console.log(result) // 代码说明 // new Array(3),表示创建了一个长度为3的数组,但是arr值输出是[,,],相当于是占位符,遇到map()、 //forEach()等方法时不会执行,自动跳到下一个值。特别说明,如果map方法的回调函数中没有return任何东西,则返回原数组相同长度的空值。 //因此本题输出结果是[1,,],循环执行一次