我有一些問題,我的包裹圍繞對象實例化和在JavaScript範圍頭的屬性值的實例化...Javascript對象。一個對象作爲對象
查看本示例代碼:
someOtherObj = {
aMethod: function() {
$('body').append('aMethod successfully called!<br>');
return 'd';
}
}
// THIS WORKS!!
$('body').append(someOtherObj.aMethod() + '<br>');
someObj = {
aValue: 'a',
bValue: 'b',
cValue: this.aValue, // THIS DOESN'T WORK!!
dValue: new someOtherObj(), // THIS DOESN'T WORK!!
eValue: {
fValue: aValue, // THIS DOESN'T WORK!!
gValue: this.aValue, // THIS DOESN'T WORK!!
hValue: someObj.aValue, // THIS DOESN'T WORK!!
},
};
// JavaScript crashes out before this, but...
// This should result in: 'a'
$('body').append(someObj.cValue + '<br>');
// This should result in: 'd'
$('body').append(someObj.dValue.aMethod() + '<br>');
// These should result in: 'a'
$('body').append(someObj.eValue.fValue + '<br>');
$('body').append(someObj.eValue.gValue + '<br>');
$('body').append(someObj.eValue.hValue + '<br>');
我覺得評論是相當自我解釋......但他這樣說:
- 我怎樣才能讓
cValue
參考(===
)aValue
,和/或具有相同的值(==
)作爲aValue
? - 我該如何實例化作爲另一個對象的屬性的新對象?
- 如何訪問包含對象的屬性?
你不能指代對象字面內的在建對象。 – Pointy
[JavaScript關閉如何工作?]的可能重複(https://stackoverflow.com/questions/111102/how-do-javascript-closures-work) –