创建没有封装的库 Javascript

Creating library without encapsulation Javascript

我对在 javascript 中创建库和在 javascript 中封装非常陌生。我在网络上的一两个教程的帮助下创建了第一个库。

示例如下所示,

<script>
        var libs=[];
            (function(libs){ 
                function firstLibrary (){ 
                this.initializeHoldings = function () {} 
                  this.myLibrary = function(){ 
                    var _myLibraryObject = [{FirstName: 'Ibrahim', LastName: 'Shaikh', CompanyName: 'Plexitech'}, 
                        {FirstName: 'Nizam', LastName: 'Siddiqui', CompanyName: 'Neoquant'}]; 
                    return _myLibraryObject; 
                  } 
                } 
                libs.customLibrary = firstLibrary;
            })(libs);
            let $ = new libs.customLibrary();
            console.log($.myLibrary());
        </script>

这是我的代码的样子, 现在的困惑是,

1): 库和封装有什么区别 javascript?

2): 如何创建库而不将其封装在 javascript 中?

3): 封装总是创建库吗?

是的,我知道这对你们中的一些人来说可能是个愚蠢的问题,但许多新手可能对此感到困惑。

1): What are the difference between libraries and encapsulations in javascript?

一个"library"是一组functions/classes。 "Encapsulation" 作为代码单元并没有真正的意义,例如 "library." 维基百科的 "encapsulation" 的 short definitions 非常好:

  • A language mechanism for restricting direct access to some of the object's components.
  • A language construct that facilitates the bundling of data with the methods (or other functions) operating on that data.

如您所见,两者都不是 "library." 的意思,但您可能会 在库的某些部分使用 封装。

2): How can I create library without encapsulating it in javascript?

可能,如果您没有任何需要防止其他代码使用的库维护的数据,并且不需要将数据与方法组合。

3): Does encapsulation always create library?

不,一点也不。它们基本上是不相关的术语和概念。