Christoph Schnauß: Oder-abfrage

Beitrag lesen

hi Stefan,

if (i=2) alert("");
der Variablen i wird der Wert 2 zugewiesen, und das alert wird ausgeführt, wenn diese Aktion erfolgreich war. Es ist allerdings immer erfolgreich, einer Variablen den Wert 2 zuzuweisen

sehr richtig ;-) Und das ist genau das, was ich mit meinem Hinweis angesprochen habe, daß man sehr genau überlegen sollte, _was_ in der if-Abfrage eigntlich für eine Bedingung wofür gesetzt werden soll. Wenn du

if (i=2) alert("");

schreibst, ist die alert-Anzeige nicht mehr von der Bedingung, daß i den Wert 2 haben soll, abhängig  -  es wird einfach ausgeführt. Im Hintergrund hat aber i jetzt den Wert 2, und damit könnte man weiterarbeiten.

so dass es nicht den geringsten Sinn macht, dies abzufragen.

Oh doch. Wenn innerhalb der Funktion noch mit der Variablen i weitergearbeitet werden soll, _kann_ das Sinn machen. Das wird sicherlich selten vorkommen bzw. erforderlich sein. Aber _möglich_ und als logisches Konstrukt durchaus überlegenswert isrt es

Deshalb ist sowas immer eine versehentliche Schreibweise

nein, nicht "immer". Es verschiebt sich lediglich der "Akzent" der if-Bedingung.

Christoph S.