为什么我的表达如果条件不起作用?

时间:2016-04-01 15:38:28

标签: javascript

我是JavaScript的新手,试图理解JavaScript中的一些数学逻辑,不知道为什么我的代码在条件没有执行的情况下?

index.js

var a = 0.1,
    b = 0.2,
    c = Math.random(a + b);

if(c === 0.3) {
    console.log('fun');
}

2 个答案:

答案 0 :(得分:2)

Math.random()给出一个介于0和1之间的随机数。

使用Math.round()来舍入浮点数,从而消除浮点差。

var a = 0.1,
    b = 0.2,
    c = Math.round((a + b) * 100) / 100; // Round numbers to single decimal point

if (c === 0.3) {

答案 1 :(得分:0)

LessonTwoB返回0(含)和1(不包含)之间的随机数,不带任何参数。

因此,Math.random()本身可以生成0.3而不需要任何调整。

试试这个:

Math.random()