JS中三目运算符和if else的区别分析与示例


Posted in Javascript onNovember 21, 2014

今天写了一个图片轮播的小demo,用到了判断

先试了一下if else,代码如下:
 

if(n >= count-1){

n =0;

}else{

n ++;

}

随后代码写完了,准备优化一下代码,将此段改成了三目运算符的写法
 

n = n >= (count-1) ? n=0 : n++

结果完全不同

随后研究了一下这两者的区别,总结为一句话:三目运算有返回值,if else没有返回值

做了如下测试:
 

var n=1;

 if(n>1){

    n=0;

}else{

    n++;

}

console.log(n);
输出结果:2

三目运算如下:
 

var n=1;

n = n>1?0 : n++;

console.log(n);

输出结果为:1

插入一段其他内容:++n和n++的区别:简单地说,都是 n 自加1。区别是,n++是执行完后面的语句才加1;而++n 就先做 n+1才执行后面的语句

那么对于++n呢

if else 语句

var n=1;

 if(n>1){

    n=0;

}else{

    ++n;

}

console.log(n);

输出结果:2

三目运算结果
 

var n=1;

n = n>1?0 : ++n; 

console.log(n); 输出结果为:2

 
可以看出if else和三目运算的区别了吧~~~
 
n++和++n在此验证中,没有任何区别,因为if else都是计算结果之后的,不会返回n,没有任何返回值
 
但是对于三目运算,n++返回的n值为n本身,++n返回的n值为n+1之后的结果

读了本文,小伙伴们是不是对js中的三目运算符和if else有了新的认识呢。

Javascript 相关文章推荐
学习YUI.Ext 第二天
Mar 10 Javascript
jquery1.4.2 for Visual studio 2010 模板文件
Jul 14 Javascript
在jQuery中 常用的选择器介绍
Apr 16 Javascript
jquery 多个radio的click事件实例
Dec 03 Javascript
微信小程序 PHP后端form表单提交实例详解
Jan 12 Javascript
JavaScript基于DOM操作实现简单的数学运算功能示例
Jan 16 Javascript
基于jQuery实现简单人工智能聊天室
Feb 10 Javascript
使用SVG基本操作API的实例讲解
Sep 14 Javascript
Vue.js递归组件构建树形菜单
Dec 24 Javascript
jquery实现楼层滚动效果
Jan 01 jQuery
AngularJS基于http请求实现下载php生成的excel文件功能示例
Jan 23 Javascript
JavaScript错误处理操作实例详解
Jan 04 Javascript
node.js使用npm 安装插件时提示install Error: ENOENT报错的解决方法
Nov 20 #Javascript
JS在可编辑的div中的光标位置插入内容的方法
Nov 20 #Javascript
js实现div弹出层的方法
Nov 20 #Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
Nov 20 #Javascript
js实现二代身份证号码验证详解
Nov 20 #Javascript
js实现网页标题栏闪烁提示效果实例分析
Nov 20 #Javascript
javascript获取flash版本号的方法
Nov 20 #Javascript
You might like
PHP开发过程中常用函数收藏
2009/12/14 PHP
php像数组一样存取和修改字符串字符
2014/03/21 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
PHP中error_reporting()用法详解
2015/08/31 PHP
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
在Windows上安装Node.js模块的方法
2011/09/25 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
js循环改变div颜色具体方法
2013/06/25 Javascript
input禁止键盘及中文输入,但可以点击
2014/02/13 Javascript
javascript异步编程的4种方法
2014/02/19 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
JavaScript中数据结构与算法(五):经典KMP算法
2015/06/19 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
2015/10/26 Javascript
简要了解jQuery移动web开发的响应式布局设计
2015/12/04 Javascript
js获取本机操作系统类型的两种方法
2015/12/19 Javascript
jQuery实现磁力图片跟随效果完整示例
2016/09/16 Javascript
nodeJS删除文件方法示例
2016/12/25 NodeJs
基于vue2实现左滑删除功能
2017/11/28 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
vue实现鼠标移入移出事件代码实例
2019/03/27 Javascript
vue项目中在外部js文件中直接调用vue实例的方法比如说this
2019/04/28 Javascript
vue项目出现页面空白的解决方案
2019/10/31 Javascript
Python实现截屏的函数
2015/07/25 Python
Python实现的文本对比报告生成工具示例
2018/05/22 Python
python调用OpenCV实现人脸识别功能
2018/05/25 Python
Python运行不显示DOS窗口的解决方法
2018/10/22 Python
一个可以套路别人的python小程序实例代码
2019/04/09 Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
2020/03/01 Python
对django 2.x版本中models.ForeignKey()外键说明介绍
2020/03/30 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
大学生大二自我鉴定
2013/10/28 职场文书
12岁生日感言
2014/01/21 职场文书
竞选文艺委员演讲稿
2014/04/28 职场文书
党支部特色活动方案
2014/08/20 职场文书
保护动物的宣传语
2015/07/13 职场文书
vue3.0 数字翻牌组件的使用方法详解
2022/04/20 Vue.js