我正在一个项目上,我发现在某些函数的结尾被称为jQuery延迟对象,如下所示:
obj && obj.resolve();
目的是&&
什么?在开头(obj
)中自放置对象的目的是什么?
首先,我认为这样的调用是这样的:
如果obj
存在->然后调用该函数(resolve
)...但是我已经用一个简单的对象测试了代码,并抛出错误:
var b = {
a:function(){alert('ok')}
};
a && a.a(); // ReferenceError: a is not defined
b && b.a(); // works...
代码说“如果obj
实例化并且不为null,则调用obj.resolve()
”。
它的工作原理是因为JavaScript处理0
,null
并undefined
作为false
,以及任何其他价值true
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句