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 相关文章推荐
prototype 1.5相关知识及他人笔记
Dec 16 Javascript
JavaScript中this关键字使用方法详解
Mar 08 Javascript
jQuery实现网站添加高亮突出显示效果的方法
Jun 26 Javascript
简单纯js实现点击切换TAB标签实例
Aug 23 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
Sep 01 Javascript
JavaScript深度复制(deep clone)的实现方法
Feb 19 Javascript
js ajaxfileupload.js上传报错的解决方法
May 05 Javascript
AngularJS 表达式详解及实例代码
Sep 14 Javascript
详解React 16 中的异常处理
Jul 28 Javascript
vue模仿网易云音乐的单页面应用
Apr 24 Javascript
微信小程序事件 bindtap bindinput代码实例
Aug 26 Javascript
vue实现动态给id赋值,点击事件获取当前点击的元素的id操作
Nov 09 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
火影忍者:这才是千手柱间和扉间的真正死因,角都就比较搞笑了!
2020/03/10 日漫
PHPAnalysis中文分词类详解
2014/06/13 PHP
在Linux系统下一键重新安装WordPress的脚本示例
2015/06/30 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
2017/02/10 PHP
PHP中localeconv()函数的用法
2019/03/26 PHP
ExtJS 2.0实用简明教程 之Border区域布局
2009/04/29 Javascript
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
2011/10/29 Javascript
alert和confirm功能介绍
2014/05/21 Javascript
JavaScript使用指针操作实现约瑟夫问题实例
2015/04/07 Javascript
jQuery实现的淡入淡出二级菜单效果代码
2015/09/15 Javascript
JavaScript实现cookie的写入、读取、删除功能
2015/11/05 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
2017/12/18 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
Vue入门之animate过渡动画效果
2018/04/08 Javascript
vue 使用外部JS与调用原生API操作示例
2019/12/02 Javascript
Vue微信公众号网页分享的示例代码
2020/05/28 Javascript
JavaScript实时更新当前的时间的示例代码
2020/07/15 Javascript
浏览器JavaScript调试功能无法使用解决方案
2020/09/18 Javascript
Python通过正则表达式选取callback的方法
2015/07/18 Python
django用户登录和注销的实现方法
2018/07/16 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
用Pelican搭建一个极简静态博客系统过程解析
2019/08/22 Python
Python命令行参数argv和argparse该如何使用
2021/02/08 Python
canvas离屏技术与放大镜实现代码示例
2018/08/31 HTML / CSS
Ibatis的核心配置文件都有什么
2014/09/08 面试题
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
优秀学生自我鉴定范例
2013/12/18 职场文书
我的大学生活职业生涯规划
2014/01/02 职场文书
家长给孩子的评语
2014/01/30 职场文书
治超工作实施方案
2014/05/04 职场文书
2014年国庆节寄语
2014/09/19 职场文书
保险公司客户经理岗位职责
2015/04/09 职场文书
2015年安全生产月工作总结
2015/07/27 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书