这是我正在使用的功能。我实际上在React Native documentation中找到了它:
var testFunction = function(word) {
return word && '';
}
以下是我使用此功能的方法:
var testWord = testFunction("Alex");
testWord
返回的testFunction
的最终值为""
。
我希望返回的值可以是true
或false
,作为&&
表达式的结果。但是,该值是一个值为""
的字符串。
有人可以解释这背后的逻辑吗?
答案 0 :(得分:4)
如果LHS为真,则&&
评估为右侧,否则评估为LHS。它没有作为布尔值进行评估。
0 && 1 // 0 because 0 is not true
1 && 0 // 0 because 1 is true
1 && 2 // 2 because 1 is true