&&和||的妙用

在js逻辑运算中,0、""、null、false、undefined、NaN都会判为false,其他都为true

几乎所有语言中||和&&都遵循“短路”原理,如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。 

下面是在AngularJS中根据角色加载子模板的例子

<div ng-include="user.admin&&'edit.admin.html'||'edit.user.html'">
</div>

如果user.admin为true,则会去跑第二个表达式edit.admin.html,并且返回值为第二个表达式,edit.admin.html

如果user.admin为false,则user.admin&&'edit.admin.html'表达式为false,回去跑||后面的第三个表达式,第三个表达式为true,结果为第三个表达式的值

原文地址:https://www.cnblogs.com/shanoon/p/5507602.html