In JS what does processMethod = processMethod || function(){



我正在阅读一些javascript代码,我看到了很多看起来像这样的代码:

processMethod = processMethod || function(){};

它通常位于函数内部。我相信这是一个速记代码,但我不确定它的作用。

它是否检查 processMethod 是否有值,以及它是否没有将其声明为以后可以定义的函数?

用词来说:

if there is no processMethod, create it empty.

||与布尔值一起使用,因此它会检查第一个操作数processMethod是否具有布尔等价值。如果定义了 processMethod 且不为 null,则布尔等价物为true。如果 processMethod 未定义或 null,则布尔等价值为false。在 false-case 中,||寻找第二个操作数的布尔等价物,它不为空,因此它的布尔等价物是true

false || true解析为true,因此过程方法变得function(){}

顺便说一句function(){}是一个空函数,它曾经不会在processMethod()上抛出错误

它本质上检查它是否存在。如果不存在,请分配它。

function doSomething(o) {
o = o || {};
}

在上述情况下,它检查是否传递了o的值。如果不是,则为其分配一个空对象。

最新更新