javascript - parseInt ('1e1' ) 与 parseFloat ('1e1' )

标签 javascript parseint parsefloat

parseInt(1e1); //10
parseInt('1e1'); //1
parserFloat('1e1') //10

为什么 parseInt 在第二种情况下返回 1?这三个应该不会返回相同的结果吧?

最佳答案

  1. 1e1 是一个计算结果为 10 的数字文字; parseInt() 看到 10 并愉快地返回它。
  2. '1e1' 是一个字符串,parseInt() 不识别指数表示法,所以它在第一个字母处停止。
  3. '1e1' 作为字符串在解析为 float 时完全没问题。

奖励:parseInt('1e1', 16) 返回 481,将其解析为 3 位十六进制数。

关于javascript - parseInt ('1e1' ) 与 parseFloat ('1e1' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31732983/

相关文章:

JavaScript 无法从函数的数组参数获取值

javascript - 寻找替代方法来进行 isNaN 测试

javascript - 计算多种货币格式元素的总和

javascript - 在 nestjs guard 中使用路径参数

javascript - QTcpSocket 不刷新 HTTP header ( cometd 模式)

javascript - 检查变量是否是javascript中的整数

java - 如何将 String 解析为具有默认值的 int?

javascript - 有没有 parseFloat 的替代品?这使我能够处理最多 21 位数字的数字?

Javascript parseFloat 改变数字

javascript - 试图理解 jquery 上的 JSONP