词条信息

admin
admin
超级管理员
词条创建者 发短消息   

相关词条

热门词条

更多>>
在搜索引擎眼中,怎样的内容才算是“高质量内容”
在 SEO 圈,“内容”绝对是一个经久不衰的话题,虽然每个阶段的搜索引擎算法对待 SEO 都有不同的标准,愈发...
为什么总是互联网企业大裁员?
每年到这个时候,关于裁员的消息就不绝于耳(眼)。裁员年年有,今年尤其多。因为舆论管制的问题,但凡提到具体公司,...
为什么别人的抖音能赚钱?
有人的地方,除了有江湖,还有市场。自从网络直播、短视频成为国民级的娱乐方式后,在相关领域上已经汇集了上亿用户,...
华为孟晚舟被扣:“五眼联盟”或是背后关键因素
▲资料图。图片来自网络。 北美当地时间12月5日,加拿大多家媒体相继报道称,中国企业华为技术有限公司副总裁兼...
携号转网通过短信即可办理
携号转网终于来了!在工信部的严格要求下,从12月开始,国内5个省天津、海南、江西、湖北、云南正式开始受理“携号...
解决网 >>所属分类 >> 程序开发    JavaScript   

JavaScript三元运算符的使用

标签: JavaScript

顶[0] 发表评论(0) 编辑词条

三元运算符其实是很方便很好用的一种条件判断方法,这个方法可以使调用或渲染数据时逐级筛选。不仅如此,如果适当的扩展三元运算符的逻辑,这个判断方法还会很好玩,也可以在某种情景下提高代码效率。有人会说,三元运算符只适合一些简单的判断场景,其实并不然!


目录

语法编辑本段回目录

我们先来看一下三元运算符的最基本的语法:

条件表达式?True:False  

这是三元运算符最基本的语法结果,首先`?`前是一个条件表达式,`?`后面的即是逐级执行的条件,如果条件为真值时,`?`后面的一个事件将被触发,否将会触发下一个事件。这个结构类似于:


if(条件表达式){  

  //True  

}else{  

  //False  

}  


运用编辑本段回目录


实践才是一切开始的必要条件,下面我们就通过实际需求运用一下三元运算符。三元运算符其实和if...else...的原理基本无差,三元运算符能实现的其实if...else...也能实现,但是存在即合理,他能在有些需求更方便的做条件判断。


比如你要给一个变量赋值的时候,需要按照不同条件赋予不同值的时候,比如我们有两种状态,不同状态下要赋给变量不同的值,我们可以对比下三元运算符和if...else...的写法


//三元运算符  

var status = (type==1?'已售':'未售')  

  

//if...else...  

if(type==1){  

  var status = '已售'  

}else{  

  var status = '未售'  

}  


对比一下这两种写法,很明显的三元运算符的条件判断写法代码量更简洁,而常用的if...else...判断则显得有点臃肿,而且也不够优美。


拓展编辑本段回目录


如果你认为,只有在这种简单的条件判断下才能用到三元运算符,那你就大错特错了,三元运算符也能在一些复杂的场景下运用,那我们就通过三元运算符来模拟if...else if..else...的判断模式

我们再拓展一下之前的那个简单的条件表达式,比如,现在我们还是两种状态码,但是有一种状态码里还有一种不同的情况存在,我们通过三元运算符来实现一下:


//简单的条件判断  

var status = (type==1?'已售':'未售')  

  

//拓展的条件判断  

var status = (type==1?(agagin==1?'再售':'已售'):'未售')  


上面拓展的条件判断里实现了if...else if...else...的写法,我们通过if...else if...else...来是实现一下,以方便理解:


if(type==1 && again==1){  

  var status='再售'  

}else if(type==1 && again==0){  

  var status='已售'  

}else{  

  var status='未售'  

} 

 

那我们可以换一个角度来看三元运算符,我们上面一个拓展的条件判断可以分解为两个条件表达式,第一个是type==1,第二个就是again==1,也就是说,只是表达式的条件判断为真值时,就会执行该判断`:`前的一个事件,所以当第一个条件表达式判断后还会执行下一个判断。


进阶编辑本段回目录


我们按照这种方式理解三元运算符后,就可以猜想到,这个条件表达式里其实不单单是一个判断或者一个结果,也可以是函数,毕竟JavaScript本就是函数式编程的脚本语言。比如:


check()?Ture:False  

status==1?True():False()  


有了函数的加入,那三元判断的拓展空间也就更强了。你们可以举一反三的试试看,还有没有更有趣的写法加入到三元运算符。


 

 

本文地址:解决网 http://www.solves.com.cn/doc-view-4802.html

TAGS:SOLVES , 电脑技术 , 电脑知识 , 网站建设, 电脑百科, 网络营销 , 网站托管 , 硬件技术 , 网络技术 , 软件技术, 维修网点

附件列表


按字母顺序浏览:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

→我们致力于为广大网民解决所遇到的各种电脑技术问题
 如果您认为本词条还有待完善,请 编辑词条

上一篇苹果封杀加密货币!
下一篇职场:你靠什么在单位立足?

0
1. 本站部分内容来自互联网,如有任何版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
2. 本站内容仅供参考,如果您需要解决具体问题,建议您咨询相关领域专业人士。
3. 如果您没有找到需要的百科词条,您可以到百科问答提问或创建词条,等待高手解答。

关于本词条的提问

查看全部/我要提问>>