如何解决JavaScript的计算限制

Eug*_*rez 6 javascript

运行此代码段

            document.write(parseFloat("999999999999999"));
            document.write("<br>");
            document.write(parseFloat("555555555555555555555555.99"));
            document.write("<br>");
            document.write(parseInt("9999999999999999.99"));
    
            document.write("<br>");
            document.write(parseInt("88888888888888888",10));
            document.write("<br>");
            document.write(parseFloat("88888888888888888"));
Run Code Online (Sandbox Code Playgroud)

您会注意到从字符串到有效数字的转换是错误的.这是javascript中的已知限制,最多15位数(?).我知道如果它是JS限制,那么我们就无法做任何事情.但在ajax企业界,我们总是需要在浏览器中计算批量.随着服务器端node.js的出现,这已经不再容忍了,社区需要找到一个解决方案,一劳永逸地解决这个问题,如果不能解决的话.

我的老板找到了一个高精度的Javascript计算器,但它是cpu hogging.另一个解决方案是将其提供给服务器端,但这将增加"chattiness",这是一种反模式.我要问的是,你怎么解决这个问题?

请纠正我如果我在上面提到的任何事情上都错了.

Chr*_*nte 1

如果 JavaScript 无法解析巨大的数字,那么它很可能也无法对它们执行任何有用的操作,例如计算(没有您发布链接的内存密集型计算器)。如果需要显示号码,为什么不使用 Ajax 请求呢?只需尝试将多个数字到字符串的操作合并到一个请求中即可。