[‘1’, ‘2’, ‘3’].map(parseInt) what & why ? // [1, NaN, NaN]
parseInt(string,[, radix])
parseInt() 函数解析一个字符串参数,并返回一个指定基数的整数 (数学系统的基础)
string 要被解析的值。如果参数不是一个字符串,则将其转换为字符串(使用 ToString 抽象操作)。字符串开头的空白符将会被忽略。
radix 一个介于2和36之间的整数(数学系统的基础),表示上述字符串的基数。默认为10。
radix 为0 默认为10。
string以0开, radix默认为10。
返回值 返回一个整数或NaN。
因此,可解析
['1', '2', '3'].map(parseInt) ==>
['1', '2', '3'].map( (item, index) => {
parseInt(item, index)
})
parseInt('1', 0) // 1 radix===0 默认为10 1是10进制数输出1
parseInt('2', 1) // NaN radix 不存在1 输出NaN
parseInt('3', 2) // NaN radix === 2 3 不是 2进制数 输出 NaN