Felix Riesterer: Name in Object-Literal durch Variable ersetzen

Beitrag lesen

Liebe(r) snoot,

Object-Literale.

in einem Objekt-Literal definierst Du ein Objekt. Da gibt es nix variables, denn das Objekt hat definierte Eigenschaften und Methoden. Die sind in Deinem Literal sozusagen "fix". Du kannst aber später dynamisch Eigenschaften hinzufügen:

function addProperty(o, n, v) {  
    o[n] = v;  
    return o;  
}  
  
function MyObj () {  
    this.eigenschaft = "wert";  
    this.methode = function () {  
        alert("Eigenschaft: " + this.eigenschaft);  
    };  
}  
  
var obj = new MyObj();  
obj.methode();  
obj = addProperty(obj, "neu", "unerwartet");  
alert("Neu: " + obj.neu);

Ich bin in JS nicht so firm, sodass ich nicht weiß, ob man diese "addProperty"-Funktion wirklich braucht, oder ob sie im Sprachumfang nicht inzwischen nativ existiert (evt. unter anderem Namen). In diesem Zusammenhang ist molilys Artikel "Organisation von JavaScripten" sehr interessant, insbesondere die bind-Funktion.

Liebe Grüße,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)