在JavaScript中定義對象時,有沒有辦法讓該對象的成員訪問同一對象的另一個成員的值?例如,如果我定義下面的(使用jquery)如何讓JavaScript對象的一個成員引用同一對象的另一個成員?
var x = $.extend({}, {
greeting: 'hello',
message: this.greeting+' world'
});
alert(x.message);
這上面的代碼將提醒undefined world
。在定義期間如何使其值爲greeting
。在這種情況下,預期的輸出是hello world
。
相關:http://stackoverflow.com/questions/133973/how-does-this-keyword-work-within-a -javascript-object-literal – m90
'this'在這種情況下是窗口,而不是對象,並且由於對象沒有在任何地方定義,所以沒有任何可以引用的東西。所以,不,你不能那樣做。 –