js与运算符和或运算符的妙用_javascript技巧
程序员文章站
2022-04-23 18:12:37
...
如下题用if else实现不同条件下(add_step的变化), add_level的结果值不同:
var add_level = 0;
if(add_step == 5){
add_level = 1;
}
else if(add_step == 10){
add_level = 2;
}
else if(add_step == 12){
add_level = 3;
}
else if(add_step == 15){
add_level = 4;
}
else {
add_level = 0;
}
var add_level = 0;
switch(add_step){
case 5 : add_level = 1;
break;
case 10 : add_level = 2;
break;
case 12 : add_level = 3;
break;
case 15 : add_level = 4;
break;
default : add_level = 0;
break;
var add_level = (add_step==5 && 1) || (add_step==10 && 2) || (add_step==12 && 3) || (add_step==15 && 4) || 0;
var add_level={'5':1,'10':2,'12':3,'15':4}[add_step] || 0;
add_step==5 && add_level=1
等价于
if(add_step==5){
复制代码 代码如下:
var add_level = 0;
if(add_step == 5){
add_level = 1;
}
else if(add_step == 10){
add_level = 2;
}
else if(add_step == 12){
add_level = 3;
}
else if(add_step == 15){
add_level = 4;
}
else {
add_level = 0;
}
1)以上功能也可以通过switch来实现:
复制代码 代码如下:
var add_level = 0;
switch(add_step){
case 5 : add_level = 1;
break;
case 10 : add_level = 2;
break;
case 12 : add_level = 3;
break;
case 15 : add_level = 4;
break;
default : add_level = 0;
break;
2)Javasctipt通过||和&&来实现:
复制代码 代码如下:
var add_level = (add_step==5 && 1) || (add_step==10 && 2) || (add_step==12 && 3) || (add_step==15 && 4) || 0;
3)第2种写法也可以简写为:
复制代码 代码如下:
var add_level={'5':1,'10':2,'12':3,'15':4}[add_step] || 0;
从第2种写法中可以得出一个基本公式:
复制代码 代码如下:
add_step==5 && add_level=1
等价于
复制代码 代码如下:
if(add_step==5){
add_level = 1
}
推荐阅读
-
详解js运算符单竖杠“|”与“||”的用法和作用介绍
-
深入了解JavaScript的逻辑运算符(与、或)
-
详解js运算符单竖杠“|”与“||”的用法和作用介绍
-
深入了解JavaScript的逻辑运算符(与、或)
-
js利用与或运算符优先级实现if else条件判断表达式_javascript技巧
-
iframe子页面与父页面在同域或不同域下的js通信_javascript技巧
-
Js与Jq获取浏览器和对象值的方法_javascript技巧
-
详解JavaScript的表达式与运算符_javascript技巧
-
js的逻辑运算符 ||_javascript技巧
-
详解JavaScript的表达式与运算符_javascript技巧