我對javascript模塊和類感到困惑。我試圖創建我的類的對象,但它總是說「不能設置未定義的屬性」或「對象沒有方法」。 還有就是我的模塊2.js:Javascript無法實例化模塊中的對象
(function() {
var Game = function() {
this.state = 'a';
};
Game.prototype.somefunc = function() {
console.log(this.state);
};
})();
這是主要的應用程序代碼:
var g = require('./2.js');
var mygame = new g.Game;
mygame.somefunc();
//undefined is not a function error
或
var g = require('./2.js');
var mygame = g.Game;
mygame.somefunc();
//cannot call method of undefined error
我在做什麼錯?
你不會導出你的Game對象(它被封裝在一個匿名閉包函數中),嘗試聲明(只是一個間隙解決方法)Game對象就像這個'Game = function(){}'沒有'var'關鍵詞。 – Arnab
[This answer](http://stackoverflow.com/a/5311377/615754)可能有幫助... – nnnnnn