Flask接口签名sign原理与实例代码浅析
206
2023-07-04
switch语句的妙用(必看篇)
switch语句的普通用法很简单,如下:
var a = 3;
switch (a) {
case 1:
console.log(a);
break;
case 2:
case 3:
console.log(a);
break;
default:
break;
}
这里a和case列表中从上而下逐一做比较,如果匹配就执行case中的代码,若有break则跳出,无break则继续往下匹配,直到新的匹配和break或switch代码块结束。
注意:
a和case值的匹配算法是执行严格相等比较的(‘==='),通常a和case的值都是简单值。
case的值除了简单值之外,还可以是各种表达式,switch (a){...}中的a会和case中的表达式的结果值进行比较(“===”),由此,我们可以这样:
var a = [4], b = '3';
function foo(a, b) {
return Math.abs(a - b) < 2;
}
switch (true) {
case !(a && b): //过滤掉a,b其中有为‘假值'的情况
console.log('a:'+a,' b:http://'+b);
break;
case foo(a,b): //当a,b的差值在2以内,foo函数返回true
console.log('a - b < '+Math.abs(a-b));
case a == b:
console.log(a+'=='+b);
break;
case a < b:
console.log(a+'<'+b);
break;
case a > b:
console.log(a+'>'+b);
break;
default:
break;
}
以上例子中,true和每个case的表达式的值进行严格相等比较,当且仅当case表达式的值为布尔值true时才http://匹配,任何其他真值都不匹配。
注意:case !(a && b): 必须把&&、||运算符的结果进行显示转换为布尔值,才能匹配(因为&&、||的表达式的返回值不是布尔类型,它返回的是表达式中第一个为true、或第一个为false的那个值)
所以,只要你想得到的,只要符合规则,都能用switch实现!就是不知道这样写的代码好不好了!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~