|| 是什么意思 在第二个论点?
var obj = this;
var settings = $.extend({
param: 'defaultValue'
}, options || {});
如果有人知道如何在这里或在谷歌中搜索该字符(“|”),那就太好了!谢谢
|| 是什么意思 在第二个论点?
var obj = this;
var settings = $.extend({
param: 'defaultValue'
}, options || {});
如果有人知道如何在这里或在谷歌中搜索该字符(“|”),那就太好了!谢谢
那将是逻辑或。该语句将返回它找到的第一个真值。
在这种情况下,如果options
为 null(或任何其他非真值),它将评估为假。然后||
将返回空对象。
那是某种后备值或默认值。因此,如果对象为 null 或 false,则使用第二个值。
更重要的是,在这种情况下,如果未定义选项,则将空对象{}
作为参数传递。它是逻辑 OR 运算符的一种副作用用例。更具体地说,它使用短路。例如在下面的情况下
a || b
如果a
为真则 b 永远不会被执行,但如果a
为假则被b
执行。因此,在您展示的示例中,如果options
未定义并因此为假,则将{}
被执行并因此作为参数传递。
|| = 或
与比较运算符一样。
||
=“或”。例子:
alert(false || false || false || "I'm valid!"); // alerts "I'm valid"
在您的问题中,上面的示例演示了该函数需要一个对象作为其选项。在这种情况下,如果局部变量“options”不可用,则只需传递一个空对象。稍后,在被调用的函数中,它可能会在该新对象中设置默认值。