2010-07-27 109 views
3

我有一點問題。javascript中的布爾對象對於「false」參數返回true

我有我的ajax calss返回一個字符串的情況。

有時該字符串爲「假」 我想該字符串值始終轉換爲布爾 我嘗試新的布爾(thatValue)

但即使是「假」作爲paremter返回true

有沒有辦法解決這個問題? ?除了我寫我自己的自定義功能,如果「產品嫁接」,將返回false ..

感謝你這樣做,你已經說明

回答

3

的最佳方式:

if(value === 'true') { 
    //do something 
} 

或者:

if(value !== 'false') { 
    //do something 
} 

你通過JavaScript的這裏弱類型的限制,實際工作到你的缺點,在任何一個非空字符串將轉換爲true布爾值,即使ST戒指是"false"

爲了得到它,並將其存儲在別處使用,像這樣的工作:

var myBool = value !== "false"; 
3

字符串始終是真實的,如果它包含了一些文本,即使該文本是「假的」。您可以使用三元運算符來檢查它:

thatValue == "false" ? false : true 
相關問題