gpt4 book ai didi

Javascript (node.js) Math.floor 返回长十进制值

转载 作者:太空宇宙 更新时间:2023-11-04 03:11:31 25 4
gpt4 key购买 nike

我似乎无法得到一个四舍五入到最接近的百分位的好数字(即 12.57 而不是 12.57000000008)。

var example = {
user : "John",
dollars: 12.57
};

setInterval( function() {
example.dollars += (parseInt(Math.floor(Math.random()*2000 + 500)) / 100);
console.log(example.dollars);
}, 1000);

我不断得到如下值:
15.20000000008
88.54000000007
86.36000000008

我的数学函数设置有问题吗?

注意:这是在node.js中

最佳答案

Javascript 数字是 float 。不应依赖它们进行精确的小数运算。

例如,您可以将其输入 js 控制台

.1 + .2 //0.30000000000000004

一般来说,您可以准确地依靠整数数学,如果您需要对小数精度进行更多控制,您可以查看像this one这样的库。它允许您设置数字的错误界限,或调用以更好地处理数字类型的语言编写的外部库。

更多用于精确 JS 十进制数学的库:

关于Javascript (node.js) Math.floor 返回长十进制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16492596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com