gpt4 book ai didi

javascript - toFixed 大数函数

转载 作者:行者123 更新时间:2023-11-28 16:52:05 31 4
gpt4 key购买 nike

我有以下带有 e+ 的号码

9.074701047887939e+304

我只想拿9.07

所以我在下面尝试了,但它不起作用,它返回完整输出

console.log(parseFloat(9.074701047887939e+304).toFixed(2));

Ps:我还需要代码来处理普通数字,例如 892.0747010 ,应该输出 892.07

最佳答案

toFixed 会 trim 小数点后的数字,但您的实际数字非常大 - 它没有小数点。

如果您事先不知道数字是否很大,一种选择是首先对数字调用 toFixed(2) ( trim 并正确舍入小数点后的数字)对于小数字),然后使用正则表达式仅获取数字部分(如果存在,则删除 e),然后再次调用 toFixed(2) ( trim 掉并对于大数,正确舍入小数点后的数字):

const fix = num => Number(
num.toFixed(2).match(/\d+(?:\.\d+)?/)[0]
).toFixed(2);

console.log(fix(9.074701047887939e+304));
console.log(fix(123.4567));
console.log(fix(12345));

关于javascript - toFixed 大数函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59798839/

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