私はJSでかなり複雑なオブジェクトに取り組んでおり、問題が発生しています:
私は次の(要約)コードを持っています:
var LocationSelector;
LocationSelector = function(container) {
this.selectors = {
container: container,
city_name: container.find('input.city_name'),
city_id: container.find('input.city_id')
};
return this.initialize();
};
LocationSelector.prototype = {
initialize: function() {
return this.city.checkStatus();
},
city: {
status: null,
message: null,
id: null,
checkStatus: function() {
if (LocationSelector.selectors.city_name.val() && LocationSelector.selectors.city_id.val()) {
return LocationSelector.city.setStatus('success');
}
},
setStatus: function(status) {
return alert(status);
}
}
};
2 つの質問:
1) サブオブジェクト関数の内部ではthis
、ルート オブジェクトを参照しなくなりました。と書けば親を参照できるらしいのですLocationSelector.object.method( args )
が、入力するのが大変です。親オブジェクトに戻るショートカットを定義する方法はありますか?
2) 状況によっては、ページごとにこのインスタンスを複数持つ必要があるためselectors
、新しいオブジェクトがインスタンス化されたときにさまざまなインスタンスを設定し、プロトタイプのインスタンス セレクターを参照できることが重要です。LocationSelector
サブオブジェクトメソッドで親オブジェクト(つまり)を参照していますか?JS は、現在アクティブなオブジェクトの保存されたプロパティを保持することをどのように認識していますか?
基本的に、私はクラスを実装しようとしていますが、JS はまったく初めてで、その方法がよくわかりません。したがって、どんな助けや提案も大歓迎です。ありがとう!