在我看的文件中,我在javascript函数调用中看到||
语句是什么意思?
createObject(a_variable || b_variable)
该函数是采用真/假值还是接受其他内容?
是上面的代码,相当于
createanotherObject(a_variable ? a_variable : b_variable)
我在旁边就看到了。
答案 0 :(得分:4)
是。它们几乎完全相同(第一个是略微更有效率)。它会传递第一个真值(或者最后一个 - 如果没有真值)。
您的代码与此相同:
var argument = a_variable;
if ( ! argument ) argument = b_variable;
createObject( argument );
答案 1 :(得分:1)
如果a_variable
是真的,它将传递a_variable
的值,否则它会传递b_variable
的值。
var a = false, b = "FOOBAR";
console.log(a || b); // FOOBAR
答案 2 :(得分:1)
a = b || c;
if b is truthy
a = b
else
a = c
注意:人们忘了,但0也是假值。
答案 3 :(得分:0)
这相当于你的第二个例子。 || (或)条件在其中一个术语评估为“真实”值后结束。如果a_variable为null,则使用b_variable。