如何使情况真实JAVASCRIPT

How to make the situation true JAVASCRIPT

本问题已经有最佳答案,请猛点这里访问。

我不知道这里缺少的代码是什么,因为条件语句,它让我头疼。

添加缺少的代码,以便下面的条件将评估为真并打印"它工作了!"在控制台中。

1
2
3
4
5
if (num == 100 && num== 200 && num==300) {
    document.write('it works!');
} else {
    document.write('it doesnt');
}


如果这是一个真正的问题,您可以使用以下值:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
    var Num = function() {
      this.values = [100, 200, 300];
      this.index = -1;
    };
    Num.prototype.valueOf = function() {
      this.index++;
      return this.values[this.index];
    };
    var num = new Num();
    if (num == 100 && num == 200 && num == 300) {
      console.log('it works!');
    } else {
      console.log('it doesnt');
    }

它看起来像num是100、200和300,但是if语句有3个表达式:num == 100num == 200num == 300。每次将num与具有类型强制(使用==而不是===的数字进行比较时,都会调用valueOf,这会更改num对象实例的内部状态,因此下次比较时,它将产生不同的值。

我不会使用类型强制来比较==,而是使用===,当使用linter时,它通常会在使用==时抱怨,因为它会导致一些意外的行为,并降低代码的可预测性。


您需要使用logical或||,因为对于logical和&&,如果您使用的值与num相同,则条件决不是true

1
if (num == 100 || num== 200 || num == 300) {

但在JavaScript中,一切都是可能的,比如:能否(a==1&;a==2&;a==3)计算为真?


一次不能满足条件,打印"不满足"。所以解决办法是这样的。江户十一〔四〕号