我是JavaScript的新手,试图理解JavaScript中的一些数学逻辑,不知道为什么我的代码在条件没有执行的情况下?
index.js
var a = 0.1,
b = 0.2,
c = Math.random(a + b);
if(c === 0.3) {
console.log('fun');
}
答案 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()