执行以下程序后,x的值为 3
var x=0;
switch(++x) {
case 0: ++x;
case 1: ++x;
case 2: ++x;
}
官方解析:
++x是前置自增,也就是先自增加1,再将x返回,
所以switch表达式的值为1,匹配第二个case语句,
同样对x进行前置自增,x的值变为2,
由于没有使用break语句,在成功匹配后,会继续往下执行后面的case语句,
也就是继续执行第三个case语句,最终x值为3