从性能方面选择for,map和forEach

很多初学者总会陷入过分追求性能的误区,而忽略了语义和可读性。

如果只谈性能,显然是 for > forEach > map,为什么 for 的性能比较好?读一下 forEach 和 map 的规范就知道了。map 会返回一个等长数组,forEach 不会,所以 forEach 大于 map。

但是哪个快和应该使用哪个,并不应该划等号。

如果你需要将数组按照某种规则映射为另一个数组,就应该用 map。

如果你需要进行简单的遍历,用 forEach 或者 for of。

如果你需要对迭代器进行遍历,用 for of.

如果你需要过滤出符合条件的项,用 filter.

如果你需要先按照规则映射为新数组,再根据条件过滤,那就用一个 map 加一个 filter。

不要担心这样会慢,你那点数据量浏览器根本不 care。

如果你真的需要考虑性能,或者有 break 的需求,就用 for 吧。但是如果真的到了这一步,你应该不会来问这个问题。

另外你的第一个 test case 显然是不合理的,就不解读了。

                                                                       需要更多教程,微信扫码即可

                                                                                

                                                                                         👆👆👆

                                                        别忘了扫码领资料哦【高清Java学习路线图】

                                                                     和【全套学习视频及配套资料】
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值