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 相关文章推荐
学习从实践开始之jQuery插件开发 对话框插件开发
Apr 26 Javascript
node.js中的path.isAbsolute方法使用说明
Dec 08 Javascript
js选项卡的实现方法
Feb 09 Javascript
JS+CSS实现分类动态选择及移动功能效果代码
Oct 19 Javascript
Angular中的interceptors拦截器
Jun 25 Javascript
关于JS与jQuery中的文档加载问题
Aug 22 jQuery
React Native实现地址挑选器功能
Oct 24 Javascript
vue+vuecli+webpack中使用mockjs模拟后端数据的示例
Oct 24 Javascript
关于ES6箭头函数中的this问题
Feb 27 Javascript
jQuery实现ajax的嵌套请求案例分析
Feb 16 jQuery
node.js的http.createServer过程深入解析
Jun 06 Javascript
微信小程序获取当前位置和城市名
Nov 13 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
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
PHP实现一维数组转二维数组的方法
2015/02/25 PHP
Laravel相关的一些故障解决
2020/08/19 PHP
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
2010/04/15 Javascript
ExtJs使用总结(非常详细)
2012/03/22 Javascript
javascript setTimeout和setInterval计时的区别详解
2013/06/21 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
jquery对table中各数据的增加、保存、删除操作示例
2014/05/14 Javascript
JS实现兼容各浏览器解析XML文档数据的方法
2015/06/01 Javascript
Jquery实现顶部弹出框特效
2015/08/08 Javascript
EasyUI布局 高度自适应
2016/06/04 Javascript
聊一聊JS中的prototype
2016/09/29 Javascript
jQuery实现的鼠标滚轮控制图片缩放功能实例
2017/10/14 jQuery
判断div滑动到底部的scroll实例代码
2017/11/15 Javascript
对angularJs中2种自定义服务的实例讲解
2018/09/30 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
2019/01/15 Javascript
vue中input的v-model清空操作
2019/09/06 Javascript
Python的Flask框架中集成CKeditor富文本编辑器的教程
2016/06/13 Python
python+opencv识别图片中的圆形
2020/03/25 Python
TensorFlow 模型载入方法汇总(小结)
2018/06/19 Python
在python中按照特定顺序访问字典的方法详解
2018/12/14 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
python执行精确的小数计算方法
2019/01/21 Python
python 实现返回一个列表中出现次数最多的元素方法
2019/06/11 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
2019/06/20 Python
用python对excel查重
2020/12/07 Python
python接口自动化框架实战
2020/12/23 Python
单身旅行者的单身假期:Just You
2018/04/08 全球购物
英格兰足协官方商店:England Store
2019/07/12 全球购物
周年庆促销方案
2014/03/15 职场文书
写给医院的感谢信
2015/01/22 职场文书
企业爱心捐款倡议书
2015/04/27 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
经营场所使用证明
2015/06/19 职场文书
严以用权学习心得体会
2016/01/12 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang