parseInt(1e1); //10
parseInt('1e1'); //1
parserFloat('1e1') //10
为什么 parseInt 在第二种情况下返回 1?这三个应该不会返回相同的结果吧?
最佳答案
1e1
是一个计算结果为10
的数字文字;parseInt()
看到10
并愉快地返回它。'1e1'
是一个字符串,parseInt()
不识别指数表示法,所以它在第一个字母处停止。'1e1'
作为字符串在解析为 float 时完全没问题。
奖励:parseInt('1e1', 16)
返回 481
,将其解析为 3 位十六进制数。
关于javascript - parseInt ('1e1' ) 与 parseFloat ('1e1' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31732983/