前言:几乎所有的语言中,都有&&和||,a&&b 中如果a为false则后面不执行,c||d中如果c为true则后面不执行.
在js中可利用该特性,进行以下妙用:
1.&& 看如下代码:
if(a > 4) {
alert('Hello world');
}
可简化为:
a > 4 && alert('Hello world');
2.|| 看如下代码,代表的意义为如果ctx.request.body.name为0,NAN,undefind,"",false,null则将a初始化为''
var a = ctx.request.body.name || '';
其实代表:
var a = ctx.request.body.name;
if(!a) {
a = '';
}
总结:这样写虽然简介的代码的写法,但可读性变差,还需权衡.