Javascript Js Number.parseInt函数中有一些奇怪的行为,有人能解释一下吗?

Javascript Js Number.parseInt函数中有一些奇怪的行为,有人能解释一下吗?,javascript,arrays,parsing,lambda,Javascript,Arrays,Parsing,Lambda,我在javascript parse int函数中发现了一些奇怪的行为 检查以下代码: console.log([…“111”].map(Number.parseInt)) console.log([…“111”].map(x=>Number.parseInt(x))函数由两个参数定义:parseInt()参数是要解析的字符串,以及一个表示字符串表示的数字基数。在第二次迭代中,.map()调用有效地调用了 Number.parseInt("1", 1) 基数1没有意义。(

我在javascript parse int函数中发现了一些奇怪的行为

检查以下代码:

console.log([…“111”].map(Number.parseInt))
console.log([…“111”].map(x=>Number.parseInt(x))
函数由两个参数定义:
parseInt()
参数是要解析的字符串,以及一个表示字符串表示的数字基数。在第二次迭代中,
.map()
调用有效地调用了

Number.parseInt("1", 1)
基数1没有意义。(基数0也没有意义,但它忽略了这一点。)

回想一下,
.map()
函数向其回调函数传递了3个参数:数组中的元素、索引和数组本身。

接受2个参数,如果第二个参数(在MDN文档中称为
radix
)小于2或大于36,则返回
NaN