如何阻止javascript格式化数字?
当你在JS中运行一个巨大的sum时,它的结果是:如何阻止javascript格式化数字?,javascript,math,Javascript,Math,当你在JS中运行一个巨大的sum时,它的结果是:1.0328135768135768e+21。 有没有办法让它输出一个纯整数,即使它很长 谢谢。这似乎起到了作用。有点: 1.0328135768135768e+21.toString("10"); // "1032813576813576802460" 1.0328135768135768e+50.toString("10") // "103281357681357664662886440420862446808642642662440" 请
1.0328135768135768e+21
。
有没有办法让它输出一个纯整数,即使它很长
谢谢。这似乎起到了作用。有点:
1.0328135768135768e+21.toString("10");
// "1032813576813576802460"
1.0328135768135768e+50.toString("10")
// "103281357681357664662886440420862446808642642662440"
请注意(如上所示),由于JS对浮点数的处理,您不仅可以得到在末尾用零指定的数字
如果您希望在结尾处显示所有零,您可以自己设置格式:
function formatNumber(n) {
var s = n + "",
a = s.split("e");
if (a.length === 1)
return s;
s = a[0].replace(/\./,"");
s += (new Array(+a[1] - s.length + 2).join("0"));
return s;
}
演示:(注意:根本没有经过彻底测试,只是我拼凑了一个半生不熟的想法,给你一个起点。)
或者有多个库。如果数字超出整数范围,则没有库,如上面的示例所示。