【发布时间】:2023-04-05 21:05:01
【问题描述】:
我有一个变量,它可以是布尔值false,也可以是整数(包括 0)。我想把它放在一个 switch 语句中,比如:
switch(my_var){
case 0:
// Do something
break;
case 1:
// Do something else
break;
case false:
// Some other code
}
在我在谷歌浏览器中的测试中,它似乎运行良好,但我使用它有点紧张,因为我担心在某些浏览器中,如果my_var 是false,它可能会执行第一个案例自0 == false.
我只是想知道 JavaScript 中是否有任何官方说明 switch 语句将使用严格比较,例如 0 !== false,但我自己找不到任何东西,我不确定这是否能正常工作在不同的 JavaScript 引擎中。有人知道 switch 语句进行的比较是否保证是严格的吗?
【问题讨论】:
标签: javascript types comparison type-conversion switch-statement