我有一个练习。有两个变量x= 4.0和y= 4.0。为什么结果是8而不是8.0?
var x = 4.0
var y = 4.0
var result = x + y
console.log(result)
发布于 2020-06-19 12:21:10
虽然这两个都是.0,但您需要用:result.toFixed(1)告诉它显示数字。
发布于 2020-06-19 12:23:36
需要格式化您的结果。你可以像下面的代码一样使用...
var x = 4.0
var y = 4.0
var result = x + y
console.log(result.toFixed(1)) 发布于 2020-06-19 13:03:22
由于JavaScript遵循的是国际IEEE754标准,理论上它只有一种类型的数字: 64位双精度浮点数。但在现实世界中,大多数JS引擎使用32位Integer来节省内存并获得更高的效率。您可以使用'toFixed‘来显示后面的零个小数,但它在编程方式中没有任何意义,只能用于表示。
你可以参考下面的链接(来自一个JS引擎的解释) http://trac.webkit.org/wiki/JavaScriptCore
https://stackoverflow.com/questions/62463172
复制相似问题