0

javascript でオブジェクトを定義しているときに、そのオブジェクトのメンバーが同じオブジェクトの別のメンバーの値にアクセスする方法はありますか? たとえば、以下を定義している場合 (jquery を使用)

var x = $.extend({}, {
  greeting: 'hello',
  message: this.greeting+' world'
});

alert(x.message);

上記のコードは警告しundefined worldます。greeting定義中に値を取得するにはどうすればよいですか。この場合、期待される出力はhello worldです。

4

3 に答える 3

2

この方法を試してください:

var x = $.extend({}, {
  greeting: 'hello',
  message: function(){
     return this.greeting+' world';
  }
});

alert(x.message);
于 2013-04-18T18:36:10.907 に答える
0

いくつかの機能を作成できますConstructor。この関数内this.greetingで定義されます。

var Constructor = function () {
   this.greeting = 'hello',
   this.message = this.greeting + ' world'
   return this;
};

そして、次のインスタンスでオブジェクトを拡張しますConstructor

var x = $.extend({}, new Constructor());
于 2013-04-18T18:40:47.077 に答える