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 相关文章推荐
取得一定长度的内容,处理中文
Dec 20 Javascript
jQuery实现的背景动态变化导航菜单效果
Aug 24 Javascript
js仿百度登录页实现拖动窗口效果
Mar 11 Javascript
BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面
Aug 01 Javascript
基于javascript实现的购物商城商品倒计时实例
Dec 11 Javascript
Node.js 中exports 和 module.exports 的区别
Mar 14 Javascript
javascript 动态生成css代码的两种方法
Mar 17 Javascript
微信小程序实现自定义picker选择器弹窗内容
May 26 Javascript
AngularJS与后端php的数据交互方法
Aug 13 Javascript
Vue filter格式化时间戳时间成标准日期格式的方法
Sep 16 Javascript
微信小程序 云开发模糊查询实现解析
Sep 02 Javascript
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
Oct 09 jQuery
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语法(1)
2006/10/09 PHP
PHP5新特性: 更加面向对象化的PHP
2006/11/18 PHP
php 操作符与控制结构
2012/03/07 PHP
两款万能的php分页类
2015/11/12 PHP
Laravel 实现数据软删除功能
2019/08/21 PHP
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
2017/03/29 Javascript
vue监听滚动事件实现滚动监听
2017/04/11 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
AngularJS自定义指令之复制指令实现方法
2017/05/18 Javascript
详解Vue中过度动画效果应用
2017/05/25 Javascript
zTree 树插件实现全国五级地区点击后加载的示例
2018/02/05 Javascript
JavaScript模板引擎原理与用法详解
2018/12/24 Javascript
Vue 实现html中根据类型显示内容
2019/10/28 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
在vue中使用image-webpack-loader实例
2020/11/12 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
Python简单调用MySQL存储过程并获得返回值的方法
2015/07/20 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
2019/02/22 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
Python过滤掉numpy.array中非nan数据实例
2020/06/08 Python
Keras-多输入多输出实例(多任务)
2020/06/22 Python
Django ORM判断查询结果是否为空,判断django中的orm为空实例
2020/07/09 Python
美国购车网站:TrueCar
2016/10/19 全球购物
信息技术专业大学生个人的自我评价
2013/10/05 职场文书
工厂保安员岗位职责
2014/01/31 职场文书
《都江堰》教学反思
2014/02/07 职场文书
会计核算科岗位职责
2014/03/19 职场文书
超市周年庆活动方案
2014/08/16 职场文书
何玥事迹观后感
2015/06/16 职场文书
监护人证明
2015/06/19 职场文书
Java 超详细讲解数据结构中的堆的应用
2022/04/02 Java/Android