关于数组map函数的一个问题

落落叶叶无声 2020-04-02 05:09:46


这是我在控制台测试时发现的问题:使用 [ , , ,].map 并不能成功的返回我想要的结果 [ 1, 1, 1]
所以我想问下
1. 是否 [ , , ,] 和 [undefined, undefined, undefined] 有区别,如果有,是什么区别?
2. 是否是map函数处理时对两者有区分?如果有,是什么?
...全文
124 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
落落叶叶无声 2020-04-02
  • 打赏
  • 举报
回复
引用 1 楼 天际的海浪 的回复:
恩恩,虽然看不到map的代码,但如果map用for in这种那就解释的通了。
天际的海浪 2020-04-02
  • 打赏
  • 举报
回复
[]中逗号间没有内容的话,该索引是不会被赋值的。 map的回调函数只会在有值的索引上被调用;那些从来没被赋过值或者使用 delete 删除的索引则不会被调用。 var arr = [,"b",,"d"]; console.log(1 in arr);//输出true 索引1被赋过值 console.log(2 in arr);//输出false 索引2没被赋过值 arr.map(function(v, i){ console.log(v);//回调函数只调用了两次 return 1; });

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧