0
我有一個很奇怪的問題,通過使用命名空間來實例化一個對象。使用命名空間創建新對象
如果我嘗試這樣做,它不會工作:
this.myView = new this.getApp().Views.SubView({ // it doesn't work
initialize: function() {
console.log('bouh');
}
});
但是,如果我嘗試這樣做,它會工作:
this.myView = new (this.getApp().Views).SubView({ // it works
initialize: function() {
console.log('bouh');
}
});
你可以在這裏看到一個例子: http://jsfiddle.net/queval_j/a0yr41mn/
這種代碼已經被以前的工作,並且由於上週。我必須更新我的代碼,因爲這種新的行爲..所以,這是一個來自JS編譯器的問題,或者我從一段時間以來一直很幸運?
我瞭解這種行爲,但爲什麼現在這樣工作? – 2014-11-03 12:20:41
你是否在不同的瀏覽器上試過並獲得相同的行爲? – mfarouk 2014-11-03 12:35:04
我查看了我以前做過的事情,的確,我在放圓括號。而且Firefox,Chrome和IE 11也有相同的行爲。 – 2014-11-03 12:49:08