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 相关文章推荐
表单项的name命名为submit、reset引起的问题
Dec 22 Javascript
JavaScript 字符编码规则
May 04 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
Aug 08 Javascript
js string 转 int 注意的问题小结
Aug 15 Javascript
IE6下拉框图层问题探讨及解决
Jan 03 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
Sep 01 Javascript
jQuery满屏焦点图左右滚动特效代码分享
Sep 07 Javascript
JS判断是否长按某一键的方法
Mar 02 Javascript
原生js实现查询天气小应用
Dec 09 Javascript
关于react中组件通信的几种方式详解
Dec 10 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
Sep 21 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
Oct 02 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
php中的观察者模式
2010/03/24 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
php fread函数使用方法总结
2019/05/28 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
2019/10/16 PHP
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
2013/12/04 Javascript
js实现的标题栏新消息闪烁提示效果
2014/06/06 Javascript
一种新的javascript对象创建方式Object.create()
2015/12/28 Javascript
JavaScript中将数组进行合并的基本方法讲解
2016/03/07 Javascript
JS组件Bootstrap ContextMenu右键菜单使用方法
2016/04/17 Javascript
微信JS接口大全
2016/08/25 Javascript
使用Angular.js实现简单的购物车功能
2016/11/21 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
JS限定手机版中图片大小随分辨率自动调整的方法
2016/12/05 Javascript
jQuery ajax调用webservice注意事项
2017/10/08 jQuery
mpvue将vue项目转换为小程序
2018/09/30 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
2018/12/03 Javascript
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
python笔记(2)
2012/10/24 Python
python使用循环实现批量创建文件夹示例
2014/03/25 Python
实例解析Python设计模式编程之桥接模式的运用
2016/03/02 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
判断python字典中key是否存在的两种方法
2018/08/10 Python
Python mutiprocessing多线程池pool操作示例
2019/01/30 Python
python之信息加密题目详解
2019/06/26 Python
python 列表转为字典的两个小方法(小结)
2019/06/28 Python
Python文件操作模拟用户登陆代码实例
2020/06/09 Python
利用python查看数组中的所有元素是否相同
2021/01/08 Python
世界上最大的售后摩托车零配件超市:J&P Cycles
2017/12/08 全球购物
泰国折扣酒店预订:Hotels2Thailand
2018/03/20 全球购物
Camille Jewelry官网:现代女性时尚首饰
2019/07/07 全球购物
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
教师自我鉴定
2013/12/13 职场文书
公司前台辞职报告
2014/01/19 职场文书
无保留意见审计报告
2015/06/05 职场文书