switch 语句注意事项
switch 注意事项
switch 语句为表达式提供一系列的情况(case)。每个情况(case)都是表示“如果 expression 等于 value,就执行 statement”。
关键字 break 会使代码跳出 switch 语句。如果没有关键字 break,代码执行就会继续进入下一个 case。
var x=0; switch(++x) { case 0: ++x; case 1: ++x; case 2: ++x; }
//3
如果加上break,比如这样:
var x=0; switch(++x) { case 0: ++x; break; case 1: ++x; break; case 2: ++x; }
//2
这里为什么不在case 0 那就停止执行?原因在于参数是 ++x,而不是x。
var x=0; switch(x) { case 0: ++x; break; case 1: ++x; break; case 2: ++x; } //1
实际上,参数++x传参进去以后,条件已经变成1,实际上是从case 1 开始执行的。
switch在判断的时候使用的是全等号“===”,全等号在比较的时候首先看数据类型是不是一样的。
var a = \'5\'; switch (a) { case 5: console.log(\'==\'); break; case "5": console.log(\'===\'); break; default: }
// ===