为什么有时 map 会返回含 undefined 的数组?

var numbers = [1, 2, 3, 4];
var filteredNumbers = numbers.map(function(num, index) {
if(index < 3) {
return num;
}
});
console.log(filteredNumbers ) // [1, 2, 3, undefined]

分析原因:

因为 map 方法总是需要有返回值,如果你没有给一个明确的返回值,那么返回值将是 undefined。

换句话说,你不能用 map 生成一个不同长度的新数组。(map 的原数组是多少长度,返回的数组就有多少长度)

见下图,一一对应的关系:

posted @   SultanST  阅读(96)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示