请解释一下:var MYLIBRARY = MYLIBRARY || (功能(){

时间:2014-09-14 00:16:03

标签: javascript encapsulation

我偶然发现了我不确定它的作用

var MYLIBRARY = MYLIBRARY || (function(){

https://stackoverflow.com/a/2190927/680815

我的代表不多。但是我不能发表评论来问这么好,抱歉这个烂摊子。 :)

是否意味着如果定义了MYLIBRARY,则使用它并且如果不分配封装代码?

谢谢,

2 个答案:

答案 0 :(得分:3)

是的,它几乎与您的想法相符。

  

如果定义了MYLIBRARY,则使用它,如果没有,则为其分配封装的代码?

答案 1 :(得分:3)

检查MYLIBRARY是否未定义,null或false,然后保持原样,否则它将是指定的函数。

换言之:

if (!MYLIBRARY) {
    MYLIBRARY = function(){};
}

但是在你的代码片段中,我认为MYLIBRARY总是未定义的,因为你在检查时设置变量或者它是重复的。