javascript &&和||运算法的另类使用技巧


Posted in Javascript onNovember 28, 2009

&&和||在JQuery源代码内尤为使用广泛,由于本人没有系统的学习js,所以只能粗略的自我理解出来,希望大家指点下。
粗略理解如下:

a() && b() :如果执行a()后返回true,则执行b()并返回b的值;如果执行a()后返回false,则整个表达式返回a()的值,b()不执行;
a() || b() :如果执行a()后返回true,则整个表达式返回a()的值,b()不执行;如果执行a()后返回false,则执行b()并返回b()的值;
&& 优先级高于 ||

如下:


代码

alert((1 && 3 || 0) && 4); //结果4 ① 
alert(1 && 3 || 0 && 4); //结果3 ② 
alert(0 && 3 || 1 && 4); //结果4 ③

分析:
语句①:1&&3 返回3 => 3 || 0 返回 3 => 3&&4 返回 4
语句②:先执行1&&3 返回3,在执行0&&4返回0,最后执行结果比较 3||0 返回 3
语句③:先执行0&&3 返回0,在执行1&&4返回4,最后执行结果比较 0||4 返回 4

注:非0的整数都为true,undefined、null和空字符串"" 为false。

Javascript 相关文章推荐
javascript Math.random()随机数函数
Nov 04 Javascript
ExtJS4 表格的嵌套 rowExpander应用
May 02 Javascript
jQuery插件animateSlide制作多点滑动幻灯片
Jun 11 Javascript
cocos2dx骨骼动画Armature源码剖析(一)
Sep 08 Javascript
HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
Jan 26 Javascript
jQuery 3.0 的 setter和getter 模式详解
Jul 11 Javascript
详解JavaScript中return的用法
May 08 Javascript
react-native封装插件swiper的使用方法
Mar 20 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
Dec 19 Javascript
vue项目打包后提交到git上为什么没有dist这个文件的解决方法
Sep 16 Javascript
js实现移动端图片滑块验证功能
Sep 29 Javascript
微信小程序APP的事件绑定以及传递参数时的冒泡和捕获
Apr 19 Javascript
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
Nov 28 #Javascript
JavaScript 闭包在封装函数时的简单分析
Nov 28 #Javascript
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
Nov 27 #Javascript
Javascript 复制数组实现代码
Nov 26 #Javascript
js setattribute批量设置css样式
Nov 26 #Javascript
Javascript 二维数组
Nov 26 #Javascript
isArray()函数(JavaScript中对象类型判断的几种方法)
Nov 26 #Javascript
You might like
PHP中数组定义的几种方法
2013/09/01 PHP
php实现水仙花数示例分享
2014/04/03 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
解决laravel中日志权限莫名变成了root的问题
2019/10/17 PHP
实现复选框全选/全不选切换
2006/12/23 Javascript
Javascript 日期对象Date扩展方法
2009/05/30 Javascript
使用JQuery进行跨域请求
2010/01/25 Javascript
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
基于jquery实现控制经纬度显示地图与卫星
2013/05/20 Javascript
利用CSS、JavaScript及Ajax实现高效的图片预加载
2013/10/16 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
使用js实现关闭js弹出层的窗口
2014/02/10 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
jquery实现触发时更新下拉列表内容的方法
2015/12/02 Javascript
JQuery中解决重复动画的方法
2016/10/17 Javascript
JS实现Ajax的方法分析
2016/12/20 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
2018/01/03 Javascript
JavaScript异步加载问题总结
2018/02/17 Javascript
在vue中更换字体,本地存储字体非引用在线字体库的方法
2018/09/28 Javascript
python 判断自定义对象类型
2009/03/21 Python
Python的高级Git库 Gittle
2014/09/22 Python
Python中常见的数据类型小结
2015/08/29 Python
Python中字典与恒等运算符的用法分析
2019/08/22 Python
Python图像处理库PIL中图像格式转换的实现
2020/02/26 Python
django orm模块中的 is_delete用法
2020/05/20 Python
Python的历史与优缺点整理
2020/05/26 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
python压包的概念及实例详解
2021/02/17 Python
酒店总经理助理岗位职责
2014/02/01 职场文书
医院信息公开实施方案
2014/05/09 职场文书
4s店销售经理岗位职责
2014/07/19 职场文书
公证委托书标准格式
2014/09/11 职场文书
2014年组织部工作总结
2014/11/14 职场文书
公司2014年度工作总结
2014/12/10 职场文书
优秀党员事迹材料
2014/12/18 职场文书
Win10系统下配置Java环境变量
2021/06/13 Java/Android