gpt4 book ai didi

javascript - 在 JavaScript switch 语句中假设严格比较是否安全?

转载 作者:IT王子 更新时间:2023-10-29 02:43:56 25 4
gpt4 key购买 nike

我有一个变量,它可以是 bool 值 false,也可以是整数(包括 0)。我想把它放在一个 switch 语句中,例如:

switch(my_var){
case 0:
// Do something
break;
case 1:
// Do something else
break;
case false:
// Some other code
}

在我的 Google Chrome 测试中,它似乎工作得很好,但我有点紧张使用它,因为我担心在某些浏览器中,如果 my_varfalse ,它可能会执行自 0 == false 以来的第一个 case。

我只是想知道 JavaScript 中是否有任何官方说明 switch 语句将使用严格比较使得 0 !== false,但我自己找不到任何东西,而且我我不确定这是否适用于不同的 JavaScript 引擎。有谁知道 switch 语句所做的比较是否保证是严格的?

最佳答案

看看ECMA 262, section 12.11 , 第二种算法, 4.c.

c. If input is equal to clauseSelector as defined by the === operator, then...

关于javascript - 在 JavaScript switch 语句中假设严格比较是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6989902/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com