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 相关文章推荐
js 字符串操作函数
Jul 25 Javascript
体验js中splice()的强大(插入、删除或替换数组的元素)
Jan 16 Javascript
js实现超简单的展开、折叠目录代码
Aug 28 Javascript
JS实现左右拖动改变内容显示区域大小的方法
Oct 13 Javascript
基于Jquery代码实现支持PC端手机端幻灯片代码
Nov 17 Javascript
JS三级可折叠菜单实现方法
Feb 29 Javascript
Javascript将双字节字符转换成单字节字符并计算长度
Jun 22 Javascript
JS双击变input框批量修改内容
Dec 12 Javascript
vue实现商城上货组件简易版
Nov 27 Javascript
zTree 树插件实现全国五级地区点击后加载的示例
Feb 05 Javascript
如何从头实现一个node.js的koa框架
Jun 17 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
Aug 15 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
理解PHP5中static和const关键字的区别
2007/03/19 PHP
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
php中mail函数发送邮件失败的解决方法
2014/12/24 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
2015/12/11 PHP
JQuery操作tr和td内容的方法实例
2013/03/06 Javascript
Extjs 3.3切换tab隐藏相应工具栏出现空白解决
2013/04/02 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
2015/03/23 Javascript
javascript页面倒计时实例
2015/07/25 Javascript
C++中的string类的用法小结
2015/08/07 Javascript
再JavaScript的jQuery库中编写动画效果的指南
2015/08/13 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
深入理解nodejs中Express的中间件
2017/05/19 NodeJs
Mongoose实现虚拟字段查询的方法详解
2017/08/15 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
vue2.0模拟锚点的实例
2018/03/14 Javascript
js构建二叉树进行数值数组的去重与优化详解
2018/03/26 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
JS高阶函数原理与用法实例分析
2019/01/15 Javascript
详解nuxt 微信公众号支付遇到的问题与解决
2019/08/26 Javascript
javascript实现异形滚动轮播
2019/11/28 Javascript
微信小程序实现树莓派(raspberry pi)小车控制
2020/02/12 Javascript
axios封装与传参示例详解
2020/10/18 Javascript
详解python之协程gevent模块
2018/06/14 Python
python中for循环把字符串或者字典添加到列表的方法
2019/07/20 Python
欧洲最大的拼图游戏商店:JigsawPuzzle.co.uk
2018/07/04 全球购物
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
安全生产检讨书
2014/01/21 职场文书
班级活动策划书
2014/02/06 职场文书
招商专员岗位职责
2014/02/08 职场文书
机械制造专业毕业生求职信
2014/03/02 职场文书
村创先争优活动总结
2014/08/28 职场文书
导游词400字
2015/02/13 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
2016习总书记系列重要讲话心得体会
2016/01/15 职场文书