为什么parseInt()方法在这种情况下不起作用(返回NaN)

时间:2017-01-19 01:53:25

标签: javascript arrays

这是JavaScript中的一个基本功能,它应该将数字字符串数组转换为整数数组。



function convert(arr) {
  return arr.map(parseInt,10);
}




运行结果



convert(["1","2","3","4","5"]);




应该返回



[1,2,3,4,5]




。但是函数返回:



[1, NaN, NaN, NaN, NaN]




我知道如果parseInt()函数遇到一个不是数字的字符,它会返回NaN。我也知道,如果用传统的for()循环替换Array.prototype.map()函数,该方法将起作用,因此罪魁祸首似乎是.map()函数。有谁知道为什么.map()在数组中的第一个indice上正常工作,但对其他的不起作用?

感谢。

0 个答案:

没有答案