使用布尔类型与字符串类型" true" /" false&#34 ;?的优缺点是什么?

时间:2014-05-01 07:55:38

标签: javascript boolean

在Javascript中,我看到使用字符串类型代表“true”和“false”的代码。为什么不简单地使用布尔类型?

在Javascript中使用布尔类型与字符串类型“true”/“false”有什么优缺点?或者使用字符串类型来表示布尔值是不好的做法?

3 个答案:

答案 0 :(得分:2)

字符串"true""false"被认为是真实的。所以,永远不要使用它们而不是布尔值。

console.log(Boolean("true"));
# true
console.log(Boolean("false"));
# true

console.log(true  != "true");
# true
console.log(false != "false");
# true

答案 1 :(得分:1)

你应该一直使用布尔 使用字符串"false"作为布尔值仍然是真实的,因为它不是空字符串。

Boolean("true")
>> true

Boolean("false")
>> true

Boolean("")
>> false

答案 2 :(得分:1)

你应该尽可能使用布尔 - 除了其他原因之外,布尔的比较要比字符串比较快得多。