gpt4 book ai didi

javascript - Javascript 中数字的精确 float 如何工作?

转载 作者:行者123 更新时间:2023-11-30 19:40:43 25 4
gpt4 key购买 nike

大家好,我正在处理有关天文计算javascript 文件,所以我需要更高的精度。我对每一行都有很多操作,我希望结果更精确(逗号后还有十或二十小数)。

在 JavaScript 中,如果我不声明小数位数(例如使用 .ToFixed(n)),逗号后有多少个位置,语言在计算?

例如:

var a= 1.123456789*3.5; // result 3.9320987615
var b= a/0.321;
var c= b*a;

// c => 48.16635722800571

会是什么结果?就像对 javascript 的每个变量使用逗号后的所有小数做近似?

为什么在其他问题中用户建议使用 decimal.js 或其他库?

如果我的问题看起来很愚蠢,我很抱歉,但对我来说很重要。我希望你能帮助我。

对不起我的英语!

最佳答案

Javascript 使用 IEEE-754 double ,这意味着它只计算精度为 15 位十进制数字左右的数字,超过的数字将被 chop 。如果您需要更高的精度,则必须使用 decimal.js 或其他类似的库。其他问题推荐decimal.js 或其他库是因为它很容易放入您的程序中,并且可以提供您想要的精度。

默认情况下它没有在计算机中实现的原因是计算机需要花费更多的精力来计算 20 位数字而不是 15 位数字,因为计算机被构建为仅计算 15 位十进制数字。如果您想阅读更多内容,我建议您阅读 Arbitrary Precision Arithmetic在维基百科上。

关于javascript - Javascript 中数字的精确 float 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55434187/

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