问题描述
可能重复:
Javascript 命名空间
我对 JavaScript 很陌生,想知道是否有人可以很好地描述 JavaScript 命名空间的含义?
Im pretty new to JavaScript and was wondering if anyone could give me a good description of what is meant by JavaScript Namespacing?
还有任何资源,例如文章等,在这个主题上非常受欢迎.
Also any resources e.g. articles etc, are much appreciated on the subject.
推荐答案
JavaScript 的设计方式使得创建全局变量很容易,这些变量有可能以负面方式进行交互.命名空间的做法通常是创建一个对象字面量来封装自己的函数和变量,以免与其他库创建的发生冲突:
JavaScript is designed in such a way that it is very easy to create global variables that have the potential to interact in negative ways. The practice of namespacing is usually to create an object literal encapsulating your own functions and variables, so as not to collide with those created by other libraries:
var MyApplication = {
var1: someval,
var2: someval,
myFunc: function() {
// do stuff
}
};
然后不是全局调用 myFunc()
,它总是被调用为:
Then instead of calling myFunc()
globally, it would always be called as:
MyApplication.myFunc();
同样,var1
总是被访问为:
Likewise, var1
always accessed as:
console.log(MyApplication.var1);
在此示例中,我们所有应用程序的代码都已在 MyApplication
中命名空间.因此,我们的变量与其他库创建的或 DOM 创建的变量发生冲突的可能性要小得多.
In this example, all of our application's code has been namespaced inside MyApplication
. It is therefore far less likely that our variables will collide with those created by other libraries or created by the DOM.
这篇关于“JavaScript 命名空间"是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!