我很可能缺少一些简单的信息,但是当我在console.log之前立即声明变量时,我不明白为什么它会在每个console.log中返回“ undefined”
var timer;
var timerCalc = Math.random()*2000;
if (timerCalc > 1000){
timer === 1000;
console.log(timer);
} else if (timerCalc < 100) {
timer === 100;
console.log(timer);
} else {
timer === timerCalc;
console.log(timer + " = between 100 and 1000");
}
答案 0 :(得分:4)
您正在执行===
(比较),而不是=
(分配)。使用后者。
答案 1 :(得分:2)
===用于检查等效性,请使用单个=分配变量。
例如:
timer = 1000;
console.log(timer); //will print out 1000
答案 2 :(得分:0)
var timer;
您的变量已创建,但未关联任何值,因此未定义
timer === 1000;
此条件未定义=== 1000,如果为假
console.log(timer);
没有将值赋给计时器,因此它将显示未定义
实际上,如果在代码中用=(分配)替换===(严格比较),则console.log
将在第一个日志中显示1000,在第二个日志中显示100
答案 3 :(得分:0)
您正在检查是否不分配值