javascript - 简单的算术错误javascript

标签 javascript math jsfiddle

当我执行以下操作时:

    var score = (0.229*5) /
            + (0.237*5) /
            + (0.265*5) /
            + (0.214*5) /
            + (0.055*5);

得分为2.478305190973909。但是,如果在单行上执行相同的操作。

var score = (0.229*5) + (0.237*5)+ (0.265*5)  + (0.214*5)  + (0.055*5);

按照我的预期,得分为 5.000000000000001

什么给了?为什么我不能将操作拆分为多行?

编辑:

JSFiddle 在执行以下操作时出现错误:

var score = (0.229*5) 
            + (0.237*5) 
            + (0.265*5) 
            + (0.214*5) 
            + (0.055*5);

http://jsfiddle.net/MSamman/Jdrbq/

但是,这可以通过执行来解决

var score = (0.229*5) +
            (0.237*5) +
            (0.265*5) +
            (0.214*5) + 
            (0.055*5);

显然它不喜欢以 + 开始一行。

最佳答案

消除 / 运算符(它进行除法)

var score = (0.229*5)
            + (0.237*5)
            + (0.265*5)
            + (0.214*5)
            + (0.055*5);

使用//开始单行注释。

; 终止语句,尽管 JavaScript 解释器在某些时候会暗示分号。请参阅http://inimino.org/~inimino/blog/javascript_semicolons有关语句终止的更多信息。

关于javascript - 简单的算术错误javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16825920/

相关文章:

python - numpy.gradient 有什么作用?

html - 为什么我的 fiddle 看起来与我的页面不同?

javascript - 什么时候应该使用一个事件监听器,什么时候应该使用多个?

javascript - 在 AngularJS 中立即启动 $interval

java - 过滤负值

ios - 接受小数

javascript - Jsfiddle 的新 UI 打破了我的 Angular 和 javascript fiddle

javascript - 保持CSS网格布局简单

javascript - 如何抓取滚动加载项目的完全呈现的网页?

javascript - 如何从javascript数组中删除重复的对象?