我一直在使用Revealing模塊模式,並有幾個名稱空間。 實施例:Revealing原型模式中的命名空間對象如何?
// here's the namespace setup
var myProject= myProject|| {};
var myProject.models= myProject.models || {};
myProject.models.MyModel= function(){
var someMethod = function(){
// do something
};
return{
SomeMethod = someMethod
};
}
我移動到Revealing Prototype Pattern獲得一些內存使用情況的改善,所以我可以裝飾對象的另一功能。我如何將它保存在我的myProject.models命名空間中? 這給我的JavaScript錯誤:
var myProject.models.MyModel= function(){
// properties here
};
myProject.models.MyModel.prototype = (function(){
// methods here
var someMethod = function(){
// do something
};
return{
SomeMethod = someMethod
};
}());
刪除'var'關鍵字!你正在分配給一個屬性,而不是創建一個變量。 – Bergi 2013-04-09 19:31:32
好的,刪除var會運行。我在看他的例子,並認爲var是必需的。 – Aligned 2013-04-11 13:41:04