这个语法到底在做什么?

时间:2017-07-10 22:35:32

标签: javascript

以下一行究竟发生了什么?

return [selector, operation || "=", true];

我理解返回的是什么,OR运算符等等。我从未见过这种确切的语法。

2 个答案:

答案 0 :(得分:3)

这意味着:

  

返回包含3个元素的数组:selectoroperation(除非它是falsy,然后"=")和true

答案 1 :(得分:1)

该行用||解析运算符绑定比分隔逗号更紧密。因此该行等同于return [selector, (operation || "="), true];

在javascript中,||运算符不仅仅使用布尔值。 return (a || b)的实际语义是:“if(a是truthy)返回a; else返回b;”。

请参阅:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_Operators#Logical_OR