我正在解决一些关于 codewars 的问题,并尝试将字符串转换为这样的数字列表:
"102904".split("").map(parseInt);
预期的结果将是这样的:
[1, 0, 2, 9, 0, 4]
但它反而返回:
[1, NaN, NaN, NaN, 0, 4]
相信 map 应该适用于列表中的每个元素,这些元素是 1 位数字的字符串。人们可能会认为它没有正确解析,因为未使用基数,但是:
"102904".split("").map(function(x){ return parseInt(x);});
[ 1, 0, 2, 9, 0, 4]
使用parseInt(x, 10)
, 不会改变结果。但是直接发送 parseInt 到 map 会创建NaN
......
我在 Chrome 和 Firefox 上尝试过,我收到了相同的结果。