javascript三元运算符用法实例


Posted in Javascript onApril 16, 2015

三元运算符用法实例:

如名字表示的三元运算符需要三个操作数。

语法是 条件 ? 结果1 : 结果2;. 这里你把条件写在问号(?)的前面后面跟着用冒号(:)分隔的结果1和结果2。满足条件时结果1否则结果2。

<script type="text/javascript">

var b=5;

(b == 5) ? a="true" : a="false";

document.write(" --------------------------- "+a);

</script>

结果: --------------------------- true
<script type="text/javascript">

var b=true;

(b == false) ? a="true" : a="false";

document.write(" --------------------------- "+a);

</script>

结果: --------------------------- false

编程语言中的三元运算符介绍 

这种运算符比较罕见,因为它有三个运算对象。但它确实属于运算符的一种,因为它最终也会生成一个值。这与本章后一节要讲述的普通if-else语句是不同的。表达式采取下述形式:

布尔表达式 ? 值0:值1

若“布尔表达式”的结果为true,就计算“值0”,而且它的结果成为最终由运算符产生的值。但若“布尔表达式”的结果为false,计算的就是“值1”,而且它的结果成为最终由运算符产生的值。

当然,也可以换用普通的if-else语句(在后面介绍),但三元运算符更加简洁。尽管C引以为傲的就是它是一种简练的语言,而且三元运算符的引入多半就是为了体现这种高效率的编程,但假若您打算频繁用它,还是要先多作一些思量——它很容易就会产生可读性极差的代码。

可将条件运算符用于自己的“副作用”,或用于它生成的值。但通常都应将其用于值,因为那样做可将运算符与if-else明确区别开。下面便是一个例子:

static int ternary(int i) {

return i < 10 ? i * 100 : i * 10;

}

可以看出,假设用普通的if-else结构写上述代码,代码量会比上面多出许多。如下所示:

static int alternative(int i) {

if (i < 10)

return i * 100;

return i * 10;

}

但第二种形式更易理解,而且不要求更多的录入。所以在挑选三元运算符时,请务必权衡一下利弊。

Javascript 相关文章推荐
准确获得页面、窗口高度及宽度的JS
Nov 26 Javascript
通过location.replace禁止浏览器后退防止重复提交
Sep 04 Javascript
jQuery中on()方法用法实例
Jan 19 Javascript
javascript生成img标签的3种实现方法(对象、方法、html)
Dec 25 Javascript
bootstrap侧边栏圆点导航
Jan 11 Javascript
jQuery层级选择器实例代码
Feb 06 Javascript
js实现移动端微信页面禁止字体放大
Feb 16 Javascript
浅谈js使用in和hasOwnProperty获取对象属性的区别
Apr 27 Javascript
vue使用监听实现全选反选功能
Jul 06 Javascript
Angular6 发送手机验证码按钮倒计时效果实现方法
Jan 08 Javascript
详解Vue template 如何支持多个根结点
Feb 10 Javascript
vue+element实现图片上传及裁剪功能
Jun 29 Javascript
jQuery on()方法使用技巧详解
Apr 16 #Javascript
JavaScript简单表格编辑功能实现方法
Apr 16 #Javascript
JavaScript转换二进制编码为ASCII码的方法
Apr 16 #Javascript
JavaScript实现彩虹文字效果的方法
Apr 16 #Javascript
JavaScript监听文本框回车事件并过滤文本框空格的方法
Apr 16 #Javascript
JQuery跳出each循环的方法
Apr 16 #Javascript
jQuery $.each遍历对象、数组用法实例
Apr 16 #Javascript
You might like
COM in PHP (winows only)
2006/10/09 PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
2016/09/30 PHP
下载站控制介绍字数显示的脚本 显示全部 隐藏介绍等功能
2009/09/19 Javascript
原生JS实现加入收藏夹的代码
2013/10/24 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
JavaScript实现瀑布流布局
2020/06/28 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
简单好用的nodejs 爬虫框架分享
2017/03/26 NodeJs
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
bootstrap table插件动态加载表头
2019/07/19 Javascript
js实现随机抽奖
2020/03/19 Javascript
Element Tooltip 文字提示的使用示例
2020/07/26 Javascript
element-ui中el-upload多文件一次性上传的实现
2020/12/02 Javascript
[56:00]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第二场
2018/04/10 DOTA
python删除特定文件的方法
2015/07/30 Python
Python实现控制台进度条功能
2016/01/04 Python
Python画图学习入门教程
2016/07/01 Python
python获取程序执行文件路径的方法(推荐)
2018/04/26 Python
python实现textrank关键词提取
2018/06/22 Python
python try except 捕获所有异常的实例
2018/10/18 Python
使用python将时间转换为指定的格式方法
2018/11/12 Python
对python3中, print横向输出的方法详解
2019/01/28 Python
python中的函数递归和迭代原理解析
2019/11/14 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
香港草莓网土耳其网站:Strawberrynet TR
2017/03/02 全球购物
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
师范生实习个人的自我评价
2013/09/28 职场文书
生日邀请函范文
2014/01/13 职场文书
运动会标语
2014/06/21 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书
详解MySQL 联合查询优化机制
2021/05/10 MySQL