js与运算符和或运算符的妙用


Posted in Javascript onFebruary 14, 2014

如下题用if else实现不同条件下(add_step的变化), add_level的结果值不同:

var add_level = 0; 
if(add_step == 5){ 
add_level = 1; 
} 
else if(add_step == 10){ 
add_level = 2; 
} 
else if(add_step == 12){ 
add_level = 3; 
} 
else if(add_step == 15){ 
add_level = 4; 
} 
else { 
add_level = 0; 
}

1)以上功能也可以通过switch来实现:

var add_level = 0; 
switch(add_step){ 
case 5 : add_level = 1; 
break; 
case 10 : add_level = 2; 
break; 
case 12 : add_level = 3; 
break; 
case 15 : add_level = 4; 
break; 
default : add_level = 0; 
break;

2)Javasctipt通过||和&&来实现:

var add_level = (add_step==5 && 1) || (add_step==10 && 2) || (add_step==12 && 3) || (add_step==15 && 4) || 0;

3)第2种写法也可以简写为:

var add_level={'5':1,'10':2,'12':3,'15':4}[add_step] || 0;

从第2种写法中可以得出一个基本公式:

add_step==5 && add_level=1

等价于 <==>
if(add_step==5){
  add_level = 1
}
Javascript 相关文章推荐
Javascript里使用Dom操作Xml
Sep 20 Javascript
js 数值项目的格式化函数代码
May 14 Javascript
原生js和jquery实现图片轮播淡入淡出效果
Apr 23 Javascript
详解页面滚动值scrollTop在FireFox与Chrome浏览器间的兼容问题
Dec 03 Javascript
第五章之BootStrap 栅格系统
Apr 25 Javascript
js实现自动轮换选项卡
Jan 13 Javascript
JQuery 获取Dom元素的实例讲解
Jul 08 jQuery
使用JavaScript实现在页面中显示距离2017年中秋节的天数
Sep 26 Javascript
js 中rewrap-ajax.js插件实例代码
Oct 20 Javascript
node.js读取Excel数据(下载图片)的方法示例
Aug 02 Javascript
JavaScript fetch接口案例解析
Aug 30 Javascript
微信小程序云开发如何实现数据库自动备份实现
Aug 16 Javascript
Javascript和Java获取各种form表单信息的简单实例
Feb 14 #Javascript
jquery中交替点击事件的实现代码
Feb 14 #Javascript
javascript获取form里的表单元素的示例代码
Feb 14 #Javascript
javascript删除数组元素并且数组长度减小的简单实例
Feb 14 #Javascript
javascript中apply和call方法的作用及区别说明
Feb 14 #Javascript
jQuery获取和设置表单元素的方法
Feb 14 #Javascript
javascript生成json数据简单示例分享
Feb 14 #Javascript
You might like
php实现点击可刷新验证码
2015/11/07 PHP
PHP $O00OO0=urldecode &amp; eval 解密,记一次商业源码的去后门
2020/09/13 PHP
js关闭浏览器窗口及检查浏览器关闭事件
2013/09/03 Javascript
原生js事件的添加和删除的封装
2014/07/01 Javascript
JQuery中extend的用法实例分析
2015/02/08 Javascript
JS实现生成会变大变小的圆环实例
2015/08/05 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
AngularJs验证重复密码的方法(两种)
2016/11/25 Javascript
设置cookie指定时间失效(实例代码)
2017/05/28 Javascript
Webpack实战加载SVG的方法
2017/12/26 Javascript
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
基于mpvue的小程序项目搭建的步骤
2018/05/22 Javascript
jquery的$().each和$.each的区别
2019/01/18 jQuery
vue文件运行的方法教学
2019/02/12 Javascript
JS回调函数 callback的理解与使用案例分析
2019/09/09 Javascript
微信小程序实现分享商品海报功能
2019/09/30 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
python实现将英文单词表示的数字转换成阿拉伯数字的方法
2015/07/02 Python
Python 读写文件和file对象的方法(推荐)
2016/09/12 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
2017/07/20 Python
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
Django和Flask框架优缺点对比
2019/10/24 Python
python多线程高级锁condition简单用法示例
2019/11/07 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
2020/05/24 Python
python 实现&quot;神经衰弱&quot;翻牌游戏
2020/11/09 Python
基于PyTorch中view的用法说明
2021/03/03 Python
手机配件第一品牌:ZAGG
2017/05/28 全球购物
英国领先的在线高尔夫商店:Scottsdale Golf
2019/08/26 全球购物
酒店管理自荐信
2013/10/23 职场文书
最新教师自我评价分享
2013/11/12 职场文书
库房主管岗位职责
2013/12/31 职场文书
违反学校规定检讨书
2014/01/18 职场文书
竞选部门副经理的自荐书范文
2014/02/11 职场文书
令人印象深刻的自荐信
2014/05/25 职场文书
腾讯云服务器部署前后分离项目之前端部署
2022/06/28 Servers