我喜欢创建漂亮的 OO javascript,有时使用原型,有时更原生。在许多情况下,我创建的 javascript 类看起来像这样
var myObject = myObject || {};
myObject.Example1 = function () {
"use strict";
// ctor
function self() { }
// init
self.init = function () {
console.log("Example 1 did init");
};
return self;
};
myObject.Example2 = (function ($) {
"use strict";
// ctor
function self() { }
// init
self.init = function () {
console.log("Example 2 did init");
};
return self;
})($);
但是我似乎忘记了为什么不能创建用() 和$ 括起来的函数的实例。
var obj1 = new myObject.Example1();
obj1.init(); // Does init
var obj2 = new myObject.Example2();
obj2.init(); // Does not init (obj2.init is not a function)
myObject.Example1() 按预期工作,但为什么我不能调用 myObject.Example2()?