0

当我执行以下操作时:

    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);

显然它不喜欢以+.

4

3 回答 3

1

尝试将其写为

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

这似乎对我有用

于 2013-05-30T00:13:27.363 回答
1

消除/操作员(它正在做除法)

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

于 2013-05-30T00:15:26.157 回答
0

您可以拆分,只是不要在行尾使用 /。Javascript 评估一个介于 ; 之间的语句 字符,不管空格字符。

于 2013-05-30T00:13:27.553 回答