2016-09-26 48 views
-5

我在下面有if語句。可以在if - else if - else中添加/製作它。如果不告訴我原因。謝謝。乾杯如何在if語句中使if else成立

var num1; 
 
var num2 = 1; 
 

 
num1 = num2 != 0 ? num2 : ""; 
 

 
alert(num1);

+0

簡單。使用適當的if/else。其他任何事情都很快就會變得雜亂 –

+0

@FabianBettag我知道我可以用這種方式做一個簡單的if語句。那就是爲什麼我問是否有可能在if語句中使if - else if - else。 – KiRa

+0

是的。有可能的。但它真的很混亂。 –

回答

1

肯定,但我們(或者至少我的)人類的大腦不喜歡閱讀ing ;-)

num1 = num2 != 0 
      ? num2 
       : num3 != 0 
      ? num3 
       : num4 != 0 
      ? num4 
       : num5 != 0 
      ? num5 
       : "" 

間距不是必需的,只是使它更具可讀性。

+0

不,但隨着他們越來越長,他們變得越來越困難。然後你離開它3個月,但不得不去找蟲子,你看到它,並深深地哭泣。 –

+2

嚴重。技術上正確的答案,如果你真的這樣做會讓你被私刑。濫用三元組只適用於代碼高爾夫和寫混淆器。不要在實踐中使用。 –

+1

@AndrewBone感謝您的努力。 – KiRa

0

如果你想要的是三元經營者(? :)翻譯成if else那麼這裏有雲:

var num1; 
 
var num2 = 1; 
 

 
if (num2 != 0) { 
 
    num1 = num2; 
 
} else { 
 
    num1 = ""; 
 
} 
 

 
alert(num1);

+0

這不是我要找的。 – KiRa

+0

你在找什麼? –

+0

在上面提供的代碼中,如果可以製作if - else if - else語句,則作爲示例提供。我不知道語法是什麼。 – KiRa

0

您所描述的三元運算符,並且它幾乎

if(part before ?) { 
    (part before colon) 
} else { 
    (part after colon) 
} 

像這樣:

if(num2 != 0) { 
    num1 = num2; 
} else { 
    num1 = ""; 
} 

在一般情況下,如果你有什麼比[A =(B更復雜= = x)? a:b],請使用if塊,否則可能會冒犯你的同行程序員:-)。也使用parens很多來消除歧義,因爲操作的順序有時會變得很奇怪......

+0

當然,我不會喜歡我的同伴編程。只是想着它應該是什麼樣子。 – KiRa