我了解到,您可以通过在函数表达式或对象文字内限定类/对象的范围来模仿JavaScript中的名称空间。这样,包含对象或函数将为包含对象提供名称空间和范围。
但是要使这些对象正常工作,所有包含的对象都必须在同一文件中,对吗?
因为如果在两个不同的文件中有两个具有相同名称的名称空间/命名容器对象,则它们将根据我包含源文件的顺序相互覆盖。
File1.js
var Automtomobiles =
{
function Wheel() { ... }
};
File2.js
var Automtomobiles =
{
function Car() { ... }
};
如何跨多个文件跨越对象/类定义,但将它们保留在同一名称空间中?
最佳答案
使自动汽车成为全局对象
File1.js
var Automtomobiles = Automtomobiles || {};
Automtomobiles.wheel = function() {
}
File2.js
var Automtomobiles = Automtomobiles || {};
Automtomobiles.car = function() {
}