javascript三元運(yùn)算符用法實(shí)例
三元運(yùn)算符用法實(shí)例:
如名字表示的三元運(yùn)算符需要三個(gè)操作數(shù)。
語(yǔ)法是 條件 ? 結(jié)果1 : 結(jié)果2;. 這里你把條件寫在問號(hào)(?)的前面后面跟著用冒號(hào)(:)分隔的結(jié)果1和結(jié)果2。滿足條件時(shí)結(jié)果1否則結(jié)果2。
<script type="text/javascript">
var b=5;
(b == 5) ? a="true" : a="false";
document.write(" --------------------------- "+a);
</script>
結(jié)果: --------------------------- true
<script type="text/javascript">
var b=true;
(b == false) ? a="true" : a="false";
document.write(" --------------------------- "+a);
</script>
結(jié)果: --------------------------- false
編程語(yǔ)言中的三元運(yùn)算符介紹
這種運(yùn)算符比較罕見,因?yàn)樗腥齻€(gè)運(yùn)算對(duì)象。但它確實(shí)屬于運(yùn)算符的一種,因?yàn)樗罱K也會(huì)生成一個(gè)值。這與本章后一節(jié)要講述的普通if-else語(yǔ)句是不同的。表達(dá)式采取下述形式:
布爾表達(dá)式 ? 值0:值1
若“布爾表達(dá)式”的結(jié)果為true,就計(jì)算“值0”,而且它的結(jié)果成為最終由運(yùn)算符產(chǎn)生的值。但若“布爾表達(dá)式”的結(jié)果為false,計(jì)算的就是“值1”,而且它的結(jié)果成為最終由運(yùn)算符產(chǎn)生的值。
當(dāng)然,也可以換用普通的if-else語(yǔ)句(在后面介紹),但三元運(yùn)算符更加簡(jiǎn)潔。盡管C引以為傲的就是它是一種簡(jiǎn)練的語(yǔ)言,而且三元運(yùn)算符的引入多半就是為了體現(xiàn)這種高效率的編程,但假若您打算頻繁用它,還是要先多作一些思量——它很容易就會(huì)產(chǎn)生可讀性極差的代碼。
可將條件運(yùn)算符用于自己的“副作用”,或用于它生成的值。但通常都應(yīng)將其用于值,因?yàn)槟菢幼隹蓪⑦\(yùn)算符與if-else明確區(qū)別開。下面便是一個(gè)例子:
static int ternary(int i) {
return i < 10 ? i * 100 : i * 10;
}
可以看出,假設(shè)用普通的if-else結(jié)構(gòu)寫上述代碼,代碼量會(huì)比上面多出許多。如下所示:
static int alternative(int i) {
if (i < 10)
return i * 100;
return i * 10;
}
但第二種形式更易理解,而且不要求更多的錄入。所以在挑選三元運(yùn)算符時(shí),請(qǐng)務(wù)必權(quán)衡一下利弊。
相關(guān)文章
對(duì)JavaScript客戶端應(yīng)用編程的一些建議
這篇文章主要介紹了對(duì)JavaScript客戶端應(yīng)用編程的一些建議,主要針對(duì)MVC框架框架的一些相關(guān)使用問題,需要的朋友可以參考下2015-06-06使用AmplifyJS組件配合JavaScript進(jìn)行編程的指南
這篇文章主要介紹了使用AmplifyJS組件配合JavaScript進(jìn)行編程的指南,AmplifyJS中提供的訂閱功能十分強(qiáng)大,需要的朋友可以參考下2015-07-07解讀JavaScript中 For, While與遞歸的用法
本篇文章對(duì)JavaScript中 For, While與遞歸的用法進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下2013-05-05javascript 觸發(fā)事件列表 比較不錯(cuò)
javascript 觸發(fā)事件列表,整理的一些js的事件,一般常用的就是onclick,onmouseover等。大家可以了解下,方便以后應(yīng)用。2009-09-09javaScript復(fù)制功能調(diào)用實(shí)現(xiàn)方案
說到使用js實(shí)現(xiàn)點(diǎn)擊復(fù)制的功能,我下面想說的方法也是和網(wǎng)上的大同小異的。js實(shí)現(xiàn)是很簡(jiǎn)單,最難的是兼容問題,畢竟用IE以外的人還是有很多的2012-12-12