【es6】三元表達式


表達式 (expr1) ? (expr2) : (expr3)
在 expr1 求值為 TRUE 時的值為 expr2,在 expr1 求值為 FALSE 時的值為 expr3。
 
============
 
普通用法

當你發現你經常用if else

代碼如下:
 
if(拜春哥 || 拜考試帝){
  不掛科;
}else{
  門門掛;
}
 
那么三元的表示法就是
 
代碼如下:
 
拜春哥 || 拜考試帝 ? 不掛科 : 門門掛
 
日常中經常會有這樣的 if else 判斷,特別是嵌套比較多的時候 用三元是比較和諧的,可以讓你的代碼看起來更加清爽,結構清晰。
 
通過不斷的變化,可以衍生出很多三元的用法。如下一段jquery代碼
 
 
flag ? $('body').addClass('hover') : $('body').removeClass('hover') ;
 
$('.item')[ flag ? 'addClass' : 'removeClass']('hover') 看着比較困惑。因為當flag = true 的時候 ,代碼就變成以下代碼:

$('.item')['addClass']('hover')

 這樣寫法等同於

 $('.item').addClass('hover')

 

再升華一下
 
可以根據需要來調用自己想要的function來處理更多的事情。

代碼如下:

function a(){
do something
}
function b(){
do something
}
 
flag ? a() : b();
 
盡量避免的情況
true ? 'true' : false ? 't' : 'f' 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM