myObj = {
"testAttr" : "Bla"
}
function callTestAttr(attrName) {
alert(myObj.attrName); // undefined
alert(myObj[attrName]); // "Bla"
Meinst du das ernst?
Du beschäftigst dich mit Crockford und stellst diese Grundlagenfrage?
a.b greift immer auf eine Property namens »b« zu. »b« ist immer »b« ist immer »b«.
Wenn du den Property-Namen hingegen aus einer Variable nehmen willst, er also nicht direkt aus dem Quellcode genommen werden soll, verwende die Bracket-Schreibweise. Diese erwartet einen String, bzw. zwischen den Brackets kann eine beliebige Expression stehen, also auch ein Variablenname. Diese Variable kann einen beliebigen String beinhalten.
Mathias