JavaScriptでプロトタイプの継承を使用しており、わからない問題が発生しました。多くのJS継承の例では、サブメンバーからスーパーメンバーにアクセスしていますが、スーパーメンバーからサブメンバーにアクセスする必要があります。javacript oopアクセス基底から 'class'メンバーを拡張する
パフォーマンステストマッピングWebサービスのツールを構築しています。私はWMSプロトコルの複数のバージョンをサポートしたいと思います。可能な限りWMS基本クラスにすべての共有機能/プロパティを保持し、必要に応じて特定のバージョン実装の詳細のみを提供したいと思います。私のWMS v1.1.1デベロッパー機能は次のようになります。次のように
function wms111() {
this.version = '1.1.1';
}
wms111.prototype = new wms();
マイWMS機能(ショートバージョン)は次のとおりです。
function wms() {
var that = this;
this.HTTPMethod = 'GET';
this.descriptionParameters = {
service: 'wms',
version: that.version,
request: 'getcapabilities'
};
}
私はその後、
var service = new wms111();
var descriptionParameters = service.descriptionParameters;
ような呼び出しでこれをテストします私はservice
とrequest
プロパティが正しく定義されたdescriptionParameters
オブジェクトを取得しますが、version
は未定義です。
誰でも私がwms111から正しいプロパティにアクセスする方法を理解できますか?
ご迷惑をおかけして申し訳ございません。
優れたおかげで多くのことを。うまくいかないときに何が起こっているのか説明できますか?私は、新しいwms111()オブジェクトは、wms()関数とwms111()関数の両方ですべてを結合する単一のエンティティとして扱われると思ったので、 'that'を使用して(this)それらを区別しません – tomfumb