2017-04-04 79 views
0

有沒有辦法在If語句中設置多個事物?例如,在下面的代碼中,如果某些內容爲真或假,我想設置狀態和圖標變量。此代碼不起作用,我懷疑它是因爲& &不計算,但找不到解決方案。有什麼建議麼?if語句中的多個事件js

var status; 
var icon; 
if(x.life > 0) { 
    status = "Yes" && icon == "fa-check-circle-o" 
} else { 
    status = "No" && icon == " fa-times-circle-o" 
} 
+0

你要檢查的值,或設置價值 ? –

+0

我想設置值爲 – Dave

回答

1

有沒有一種方法來設置多個東西在if語句?例如 在下面的代碼中,我想設置狀態和圖標變量,如果 某些是真或假。

當然,這是可能的,但是,它目前不工作,因爲你沒有正確地分配值。使用單個(=)進行賦值,並使用雙精度(==)進行比較(將返回boolean)。

試試這個:

var status; 
var icon; 
if(x.life > 0) { 
    status = "Yes"; 
    icon = "fa-check-circle-o"; 
} else { 
    status = "No"; 
    icon = " fa-times-circle-o"; 
} 
+0

驚人的,這樣一個簡單的解決方案。謝謝! – Dave

+0

@Dave肯定,如果您將答案標記爲已接受,如果它有幫助,會非常感激。 –

+0

哈哈會做,它不會讓我標記正確的另一個5分鐘。 – Dave

1

使兩個單獨的語句,而不是使用&&和變量分配值時使用=代替==

var status; 
var icon; 
if(x.life > 0) { 
    status = "Yes"; 
    icon = "fa-check-circle-o" 
} else { 
    status = "No"; 
    icon = " fa-times-circle-o"; 
} 
1

沒有必要使用& &這裏,這將使你的語句的條件。 和==將檢查平等比不上項目

var status; 
var icon; 
if(x.life > 0) { 
    status = "Yes"; 
    icon = "fa-check-circle-o"; 
} else { 
    status = "No"; 
    icon = " fa-times-circle-o"; 
} 
1

你必須將它們與分號或enter分開。

var status; 
    var icon; 
    if(x.life > 0) { 
     status = "Yes"; 
     icon == "fa-check-circle-o"; 
    } else { 
     status = "No"; 
     icon == " fa-times-circle-o"; 
    } 

注意&&是常用的布爾變量;
例如:

if(x.life > 0 && y.life > 0) { 
     status = "Yes"; 
     icon == "fa-check-circle-o"; 
    } 
+1

*「請注意,&&僅用於布爾參數」* - 否,不是。您可以將它用於任何類型。 – nnnnnn

0

如果您想根據的icon值(因爲你在原來的代碼已經==)設置status

var status; 
var icon; 
if (x.life > 0) { 
    if (icon == "fa-check-circle-o") { 
     status = "Yes"; 
    } 
} else { 
    if (icon == "fa-times-circle-o") { 
     status = "No"; 
    } 
}