回归&&来自JS函数的表达式

时间:2016-07-14 13:36:59

标签: javascript

这是我正在使用的功能。我实际上在React Native documentation中找到了它:

var testFunction = function(word) {
  return word && '';
}

以下是我使用此功能的方法:

var testWord = testFunction("Alex");

testWord返回的testFunction的最终值为""

我希望返回的值可以是truefalse,作为&&表达式的结果。但是,该值是一个值为""的字符串。

有人可以解释这背后的逻辑吗?

1 个答案:

答案 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