Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 理解交换机内部的表达式_Javascript - Fatal编程技术网

Javascript 理解交换机内部的表达式

Javascript 理解交换机内部的表达式,javascript,Javascript,考虑以下脚本: var x = 1; switch (x) { case ( ( x+1 ) == 2 ): console.log("It works!"); break; default: console.log("Nope, not happening."); break; } 现在,我读到了case中的表达式被计算,然后与变量进行比较。这里,由于x是1,(x+1)==2计算结果为TRUE。另外,x(原来是

考虑以下脚本:

var x = 1;

switch (x) {
    case ( ( x+1 ) == 2 ):
        console.log("It works!");
        break;
    default:
        console.log("Nope, not happening.");
        break;
}
现在,我读到了
case
中的表达式被计算,然后与变量进行比较。这里,由于
x
是1,
(x+1)==2
计算结果为
TRUE
。另外,
x
(原来是1)的值相当于
TRUE
。如果这个推理是正确的,为什么我会得到“不,不会发生”的信息

请解释。

这样做:

var x = 1;

switch (x + 1) {
    case 2:
        console.log("It works!");
        break;
    default:
        console.log("Nope, not happening.");
        break;
}
这样做:

var x = 1;

switch (x + 1) {
    case 2:
        console.log("It works!");
        break;
    default:
        console.log("Nope, not happening.");
        break;
}
这样做:

var x = 1;

switch (x + 1) {
    case 2:
        console.log("It works!");
        break;
    default:
        console.log("Nope, not happening.");
        break;
}
这样做:

var x = 1;

switch (x + 1) {
    case 2:
        console.log("It works!");
        break;
    default:
        console.log("Nope, not happening.");
        break;
}

您没有正确阅读
开关
语句的签名。它
开关(x)
要求表达式
x
,而
案例y
要求值
y


请参阅my和。

您没有正确阅读
开关的签名。它
开关(x)
要求表达式
x
,而
案例y
要求值
y


请参阅my和。

您没有正确阅读
开关的签名。它
开关(x)
要求表达式
x
,而
案例y
要求值
y


请参阅my和。

您没有正确阅读
开关的签名。它
开关(x)
要求表达式
x
,而
案例y
要求值
y



请参阅my和。

(X+1)==2返回true而不是1。在大小写中使用值。

(X+1)==2返回true而不是1。在大小写中使用值。

(X+1)==2返回true而不是1。在大小写中使用值。

(X+1)==2返回true而不是1。在大小写中使用值。

因为1与
true不“等价”
。开关使用
==
进行比较。@ParamagneticCroissant啊,这是一个很好的洞察!谢谢你的解释。:-)因为1与
true
不“等价”。开关使用
==
进行比较。@ParamagneticCroissant啊,这是一个很好的洞察!谢谢你的解释。:-)因为1与
true
不“等价”。开关使用
==
进行比较。@ParamagneticCroissant啊,这是一个很好的洞察!谢谢你的解释。:-)因为1与
true
不“等价”。开关使用
==
进行比较。@ParamagneticCroissant啊,这是一个很好的洞察!谢谢你的解释。:-)谢谢,但我试图理解
开关的复杂性。用户@risto对此进行了解释;)是的,我刚刚看到了。但也谢谢你的回答!:)谢谢,但我试图理解
开关的复杂性。用户@risto对此进行了解释;)是的,我刚刚看到了。但也谢谢你的回答!:)谢谢,但我试图理解
开关的复杂性。用户@risto对此进行了解释;)是的,我刚刚看到了。但也谢谢你的回答!:)谢谢,但我试图理解
开关的复杂性。用户@risto对此进行了解释;)是的,我刚刚看到了。但也谢谢你的回答!:)谢谢这对我来说就是答案。:-)谢谢这对我来说就是答案。:-)谢谢这对我来说就是答案。:-)谢谢这对我来说就是答案。:-)