javascript中的Boolean对象为“false”参数返回true

时间:2010-07-27 12:27:13

标签: javascript jquery

我有点问题。

我的情况是我的ajax calss返回一个字符串。

有时候这个字符串是“假的” 我想始终将该字符串值转换为布尔值 我试过:new Boolean(thatValue)

但即使作为一个paremter的“假”,它也会返回true

无论如何要解决这个问题?除了我编写自己的自定义函数,如果“flase”将返回false?..

谢谢

2 个答案:

答案 0 :(得分:3)

你已经描述过这样做的最好方法:

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

或者:

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

你受限于JavaScript在这里的弱类型,实际上是你的劣势,任何非空字符串都会转换为true布尔值,即使该字符串是"false"

要获取并存储它以供在其他地方使用,可以使用以下方法:

var myBool = value !== "false";

答案 1 :(得分:3)

如果字符串包含一些文本,则该字符串始终为true,即使该文本为“false”。您可以使用三元运算符检查它:

thatValue == "false" ? false : true