正如标题所说,为什么我不能映射包含undefined
项目的数组?为什么不能映射'undefined'数组
var foo = new Array(3);
// [ , , ]
var bar = [null, null, null];
// [null, null, null]
foo.map(function(val){return 'test'});
// [ , , ]
bar.map(function(val){return 'test'});
// ['test', 'test', 'test']
也许是愚蠢的问题,但我真的想知道原因。
谢谢。
“因为规格说明是这样的” – Quentin
*“它没有被要求丢失数组的元素(也就是说,从未设置的索引,它们已被删除或从未分配过值)。”* - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map – deceze