hi,
<html><head><title>Test</title>
<script type="text/javascript">
> function Farbe (R, G, B) {
> this.R = R;
> this.G = G;
> this.B = B;
> this.hex = "#";
> }
>
> Dabei verstehe ich nicht, was Javascript macht wenn zum Beispiel auf die Eigenschaft R des Objekts Farbe(), per Hintergrund.R zugegriffen wird. Wie läuft das ab? Was passiert in dieser Zeile?
Das Erzeugen einer Objektinstanz mit
> [code lang=javascript]
> var Hintergrund = new Farbe("E0", "FF", "E0");
>
~~~
jetzt die Objekteigenschaften this.R, this, G, this.B auf die übergebenen Werte.
Da du dir deine Objektinstanz in var Hintergrund abgelegt hast, hast du anschliessend mit Hintergrund.R Zugriff auf diese Objekteigenschaft (weil sie "public", als "öffentlich", von aussen einsehbar, ist).
> Sind durch diese Zuweisung die Eigenschaften von Farbe auch die von Hintergrund?
Farbe definiert lediglich das Objekt - Hintergrund ist eine konkrete Objektinstanz, die hast du ja mit new Farbe(...) erzeugt.
> Wenn ich jetzt die Eigenschaften R,G und B von Farbe ändere, wirkt sich das dann auch auf zum Beispiel Hintergrund.R aus?
Die kannst du gar nicht ändern, weil Farbe keine Objektinstanz ist.
> Das ist mein erster ernsthafter Schritt in Richtung objektorientiertes Programmieren. Deswegen die vielleicht dummen Fragen :-)
<http://aktuell.de.selfhtml.org/artikel/javascript/oomodell/> und
<http://aktuell.de.selfhtml.org/artikel/javascript/organisation/>
seien dir ans Herz gelegt :-),
<http://phrogz.net/JS/Classes/OOPinJS.html> ebenfalls noch.
gruß,
wahsaga
--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }