私は JavaScript について深い知識がなく、この状況を変えようとしています。しかし、JavaScript カスタム オブジェクト関数のスコープの一部のロジックは、私には意味がありません。
例: これは、既定のプロジェクト テンプレート (Windows Phone 7 用) の PhoneGap コードの一部です。
var app = {
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function() {
app.receivedEvent('deviceready');
},
receivedEvent: function(id) {
console.log('Received Event: ' + id);
}
};
オブジェクトを作成するためにオブジェクトリテラルを使用しappます。私はそれを理解しinitialize、bindEvents関数はappオブジェクトスコープで実行されます。しかし、onDeviceReadyスコープとは何ですか?
の中に次のコードを書き込もうとしましたonDeviceReady:
console.log(this == document);\\out: false