Der Martin: objektorientierte Ansätze nutzen oder ignorieren

Beitrag lesen

Hi Cheatah,

var feld=document[formular].dasfeld.value;
was ist, wenn das Document-Objekt über eine Eigenschaft dieses Namens verfügt? Oder über ein Bild? Explicit is better than implicit:

mit der Ansicht liegen wir vollkommen auf einer Linie ("Warning: This material may contain explicit language and illustrations"). Ich habe vor meinem Posting kurz nachgedacht, ob ich die Anweisung dementsprechend ergänzen sollte, habe mich dann aber entschlossen, die Formulierung aus dem OP möglichst genau wiederzugeben.

document.forms[formular]...

Ist allemal besser und macht im Zweifelsfall weniger Kopfschmerzen.

Wobei ich ohnehin nie verstehe, warum bei JavaScript ständig irgendwelche Strings übergeben werden, anstatt Referenzen. JavaScript ist herrlich objektorientiert.

Ja, allerdings - wenn man den objektorientierten Ansatz denn nutzt. Oft sieht man aber "typische" Bildwechsel-Scripts, bei denen am Anfang mehrere image-Objekte erzeugt werden ...

~~~javascript img1off = new Image();
  img1off.src = "blah.jpg";
  img1on  = new Image();
  img1on.src  = "blue.jpg";

  
und später im Code wird dann von diesen image-Objekten immer nur die src-Eigenschaft zugewiesen ...  
  
  `document.images['btn'].src = img1on.src;`{:.language-javascript}  
  
anstatt entweder gleich das ganze fertig initialisierte Objekt auszutauschen (oder nur die neuen Bild-URLs zuzuweisen, dann aber konsequent auf die vorbereiteten Objekte zu verzichten):  
  
  `document.images['btn'] = img1on;`{:.language-javascript}  
  
Da frage ich mich dann meistens, ob's am fehlenden Verständnis liegt oder an der Einstellung "geht doch, was soll ich mir da Gedanken machen".  
  
Schönen Tag noch,  
 Martin  

-- 
Moskito, ergo summ.