当parseInt遇上map..
发布于 8 年前 作者 waksana 4575 次浏览 来自 分享

首先,不要运行,想一下 [‘1’,‘2’,‘3’,‘4’,‘5’].map(parseInt) 的结果, 我的预期是[1,2,3,4,5] 但是结果并不是这样,会出现很奇怪的结果。 原因很有意思,你们先讨论下。。。

8 回复

哈哈,奇怪个毛,这个经典的问题。

parseInt 支持第二个参数,而 map 也会将索引作为第二个参数。

经典问题,清楚两点1.map函数参数,2.parseInt是什么函数接受几个参数,每个参数什么意思

['1', '2', '3', '4', '5'].map(v => parseInt(v))

eslint

rules:
  radix:2

please

@alsotang 哈哈,精辟,“奇怪个毛"<br/><br/><a class=“form” href=“https://github.com/shinygang/Vue-cnodejs”>I‘m webapp-cnodejs-vue</a>

都是这么搞:

_.map(['1', '2', '3', '4', '5'], _.ary(parseInt, 1));

我也踩过这个坑

回到顶部