来自Mozilla开发者网络:
[1,4,9].map(Math.sqrt)
会产生:
[1,2,3]
为什么这样做:
['1','2','3'].map(parseInt)
屈服于此:
[1, NaN, NaN]
我已经在Firefox 3.0.1和Chrome 0.3中进行了测试,只是作为免责声明,我知道这不是跨浏览器功能(没有IE).
我发现以下内容将达到预期的效果.但是,它仍然没有解释错误的行为parseInt.
['1','2','3'].map(function(i){return +i;}) // returns [1,2,3]
console.log("1,2,3".split(",").map(parseInt))
版画
[1, NaN, NaN]
为什么?
在这里添加一些更多不必要的文本,使这个问题"满足SO质量标准",无论这意味着什么.
javascript ×2