我有是這樣分配的類的實例在全球範圍內的變量:一個類的實例可以用JavaScript代替它自己嗎?
window.someInstance = new MyClass();
在某一點後,我需要更換一個新的實例變量,但有可能/接受從類本身的方法中做到這一點?例如:
function MyClass() {
this.myClassMethod = function() {
window.someInstance = new MyClass();
};
}
window.someInstance = new MyClass();
window.someInstance.myClassMethod.call();
我知道一個奇怪的場景,但它乾淨地工作,我不知道這是否會產生任何內存或引用問題?
感謝
覆蓋一個變量acheieve更健壯的實現是不一樣的替換實例 - 實例可一次存儲在多個位置,例如對象的變量或屬性。 – pimvdb 2011-12-19 12:06:24
爲什麼你必須從課堂本身中取代它? – 2011-12-19 12:14:37
你讓我在頭腦中寫下奇怪的代碼......'this = eval(「new」+ typeof(this)+「()」);'... XD – 2011-12-19 12:16:10