Javascript短路表达式

短路表达式:作为"&&"和"||"操作符的操作数表达式,这些表达式在进行求值时,只要最终的结果已经可以确定是真或假,求值过程便告终止,这称之为短路求值。这是这两个操作符的一个重要属性。

代码:

 1         // || (如果a有值则取a,反之取b)
 2         var foo = a || b;
 3         // 相当于
 4         if (a) {
 5             foo = a;
 6         } else {
 7             foo = b;
 8         }
 9 
10         // && (如果a有值则取b,反之取a)
11         var bar = a && b;
12         // 相当于
13         if (a) {
14             bar = b;
15         } else {
16             bar = a;
17         }

用这种可以短路表达式可以使代码看起来简洁,提高编码效率。

更多相关文章
  • 一.短路表达式 短路表达式在jQuery中得到了大量的使用,作为"&&"和"||"操作符的操作数表达式,这些表达式在进行求值时,只要最终结果已经可以确定是真或假,求值过程便告终止,这称之为短路求值. &&短路表达式 var fo ...
  • in运算符 in运算符希望它的左操作数是一个字符串或可以转换为字符串,希望它的右操作数是一个对象. 如果右侧的对象拥有一个名为做操作数值的属性名,那么表达式返回true,例如: var point= {x:1 , y:1 }; //定义一个对象 "x" in point //=& ...
  • JavaScript从零开始表达式和运算符(1)
    原始表达式 最简单的表达式是"原始表达式"(primary expression).JavaScript中的原始表达式包含常量或直接量.关键字和变量. // 常量或直接量 1.23 //数字直接量 "hello" //字符串直接量 /pattern/ //正则 ...
  • 函数有两种模式:函数定义与函数表达式.     函数定义是在任何语言中都会遇见的,这里不再多说了.     函数表达式: 是作为表达式在代码中出现,当程序运行到此处时,才执行这部分的代码内容.函数字面量组成部分:     第一部分,关键词 function    第二部分,函数名,但是可有可无.  ...
  •     上一篇随笔介绍了如何正确判断对象类型.避免变量污染,特殊值(null.undefined.NaN)的使用,以及其他Javascript中常用关键字与方法的优化,这篇随笔将着重介绍Javascript语言中的条件与循环优化.    如有问题,请不吝指出,非常感谢:如果喜欢,右下角点个推荐吧~ ...
  • BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
    很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习js更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正确,如有错误或有更好的解法,还请斧正. 附上第二篇:BAT及各大互联网公司2014前端笔试面试题--Ht ...
  •  我觉得优化javascript是一门高深的学问,在这里也只能站在前人的肩膀上,说一些我浅显的认识,更希望的是抛钻引玉,如有不对,敬请斧正. 首先,要认识到是,优化js的关键之处在于,优化它的运行速度,以此为切入点. javascript的优化原则是:二八原则 满足考量大多数情况,而遇到极端情况,有 ...
  • 转BAT及各大互联网公司2014前端笔试面试题:JavaScript篇
    原文转自:http://blog.jobbole.com/78738/ 很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习前端基础更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正确,如有错误或有更好的解法, ...
一周排行
  • (一)数组中元素的删除和增加#代表创建一个数组,包含1到4个元素PS C:\Windows\system32> $num=1..4#查看创建好的数组PS C:\Windows\system32> $num ...
  • 需要引入的相关文件引入es1.jsecharts-plain-map.jsechart.js相关图的公共方法:/**  * echarts 折线图  * @param categories  横坐标  * @para ...
  • 假如我们想了解数据库中的User和Schema究竟是什么关系,首先必须了解一下数据库中User和Schema到底是什么概念.        在SQL Server2000中,由于架构的原因,User和Schema总有 ...
  •  OSPF多区域拓扑结构的优势降低SPF计算频率降低了通告LSA的开销OSPF路由器的类型OSPF路由器上所有直连的链路都处于同一个区域具有连接区域0接口的路由器区域边界路由器(ABR)自治系统边界路由器(ASBR) ...
  • 安装vsphere sdkVMware-vSphere-Perl-SDK-5.1.80721.exe ##看具体的情况安装对应版本的sdk修改系统环境变量,将安装路径Perl/bin和Perl/site/bin ...
  •  ELF文件格式是一个开放标准,各种UNIX系统的可执行文件都采用ELF格式,它有三种不同的类型: 可重定位的目标文件(Relocatable,或者Object File) 可执行文件(Executable) 共享库 ...
  • outlook2010插入图片置于底部使用2003打开时,位置变化
    Outlook 2010 邮件插入图片并置于文字底部,对方使用outlook2003打开时 ...
  • 我们为什么应该坚持写博客
    种种原因: 我们很多人都有过写点东西的冲动,只是又因为种种原因没有发表. 写着写着,挤不出 ...
  • 今天看到了一份合同文本,其中的合同文件的顺序有点疑问,如下图所示  看完后我觉得将合同实施过程中双方共同签署的补充与修正意见作为最后一项有些不妥,在建设工程施工合同通用条款规定双方有关工程的洽商.变更等书面协议或文件 ...
  • <html><head><title>div+css页面布局</title><meta http-equiv="content-type" c ...