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 XML实现两级级联下拉列表
Nov 10 Javascript
使用jquery获取网页中图片高度的两种方法
Sep 26 Javascript
JavaScript访问字符串中单个字符的两种方法
Jul 03 Javascript
javascript 判断两个日期之差的示例代码
Sep 05 Javascript
JS拖拽组件学习使用
Jan 19 Javascript
Boostrap入门准备之border box
May 09 Javascript
微信小程序 二维码canvas绘制实例详解
Jan 06 Javascript
详解JavaScript调用栈、尾递归和手动优化
Jun 03 Javascript
JS运动特效之同时运动实现方法分析
Jan 24 Javascript
Vue2实时监听表单变化的示例讲解
Aug 30 Javascript
vue cli3.0结合echarts3.0与地图的使用方法示例
Mar 26 Javascript
javascript实现异形滚动轮播
Nov 28 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 curl模拟post请求和提交多维数组的示例代码
2015/11/19 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
Jquery+WebService 校验账号是否已被注册的代码
2010/07/12 Javascript
根据对象的某一属性进行排序的js代码(如:name,age)
2010/08/10 Javascript
jQuery.Highcharts.js绘制柱状图饼状图曲线图
2015/03/14 Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
2016/05/24 Javascript
js实现精确到秒的倒计时效果
2016/05/29 Javascript
AngularJs bootstrap搭载前台框架——基础页面
2016/09/01 Javascript
小程序开发实战:实现九宫格界面的导航的代码实现
2017/01/19 Javascript
JavaScript ES6中export、import与export default的用法和区别
2017/03/14 Javascript
Flask中获取小程序Request数据的两种方法
2017/05/12 Javascript
React学习笔记之列表渲染示例详解
2017/08/22 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
2019/01/09 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
python获取当前时间对应unix时间戳的方法
2015/05/15 Python
Python遍历numpy数组的实例
2018/04/04 Python
基于Python 装饰器装饰类中的方法实例
2018/04/21 Python
python实现关键词提取的示例讲解
2018/04/28 Python
django 快速启动数据库客户端程序的方法示例
2019/08/16 Python
Python classmethod装饰器原理及用法解析
2020/10/17 Python
新东网科技Java笔试题
2012/07/13 面试题
护理专业本科生自荐信
2013/10/01 职场文书
银行实习生的自我评价
2014/01/13 职场文书
中班幼儿评语大全
2014/04/30 职场文书
人民调解员先进事迹材料
2014/05/08 职场文书
小学生倡议书范文
2014/05/13 职场文书
养牛场项目建议书
2014/05/13 职场文书
保护环境建议书300字
2014/05/13 职场文书
模具设计与制造专业求职信
2014/07/19 职场文书
环卫工人节活动总结
2014/08/29 职场文书
2014年群众路线教育实践活动整改措施
2014/09/24 职场文书
小学“向国旗敬礼”网上签名寄语活动总结
2014/09/27 职场文书
教师年度考核个人总结
2015/02/12 职场文书
银行求职信范文怎么写
2015/03/20 职场文书
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js