【问题标题】:How to store the one decimal point after calculating the average in javascript在javascript中计算平均值后如何存储一位小数
【发布时间】:2020-06-26 11:10:48
【问题描述】:
 var result = parseFloat(text1) + parseFloat(text2) + parseFloat(text3);
 result = Math.floor(result / 3)
 expect(result.toFixed(1)).to.equal(14.2);

 text1=14.1, text 2=22.3, 6.3

结果是柏树

预计 14.0equal 14.2

【问题讨论】:

    标签: javascript decimal average cypress


    【解决方案1】:

    两件事:

    • 你不应该调用Math.floor,因为那样你会丢失所有的小数,toFixed(1) 总是只会在这样一个整数值上加上“.0”。

    • 期待来自toFixed 的字符串数据类型,而不是数值

    所以:

    result = result / 3; // Don't floor
    expect(result.toFixed(1)).to.equal("14.2"); // expect a string.
    

    【讨论】:

      【解决方案2】:

      当你申请result = Math.floor(result / 3)时,你去掉了小数,得到一个整数,所以使用:

      result = Math.round(10 * result / 3) / 10
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-11-04
        • 2022-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-04
        • 1970-01-01
        相关资源
        最近更新 更多