• 使用math.js进行javascript精确计算


      javascript进行浮点运算会有尾差,比如算个0.1+0.7试试,得到的不是0.8 。这个问题可以使用math.js解决。

    Math.js是一款开源的JavaScript和Node.js数学库,用于处理数字、大数、复数、单位和矩阵。官网: http://mathjs.org/

    <html>
    <head>
    <script src="math.js"></script>
    <script type="text/javascript">
    function fn_click(p){
        var a , b;
        a=0.7;
        b=0.1;
        
        if(p==1){
            alert(a+b);
        }else if(p==2){
            alert(eval("a+b"));
        }else if(p==3){
            math.config({
                number: 'BigNumber'
            });
            var result = math.parser().eval(a + "+" + b)
            alert(result);
        }
    }
    </script>
    </head>
    <body>
        <input type="button" value="0.7+0.1"  onclick="fn_click(1);" />
        <input type="button" value="eval(0.7+0.1)"  onclick="fn_click(2);" />
        <input type="button" value="mathjs(0.7+0.1)"  onclick="fn_click(3);" />
    </body>
    </html>

    上面分别用3种方法计算0.7+0.1,可以看到使用math.parser().eval()计算得到了准确的结果0.8

  • 相关阅读:
    eas之动态刷新Table
    eas之导入导出
    eas之事件
    eas之获得任何一个KDTable的选中行
    eas之创建一个UI界面并对其操作
    eas之style接口
    eas之指定虚模式
    eas之数据融合
    eas之kdtable格式化
    eas之视图冻结与解冻
  • 原文地址:https://www.cnblogs.com/lyhero11/p/6225589.html
Copyright © 2020-2023  润新知