Calocybe: ab NS 4.08 läuft's prima, aber NS 4.03 gibt Fehlermeldungen

Beitrag lesen

Hallo undine!

Also wenn ich "return true;" weglasse, funktionierts.KLASSE! Aber ich dachte halt, die Funktion ist hier zu Ende und da sollen dann auch die Javascript Berechnungen aufhören und keine endlos weiteren Berechnungsschleifen gerechnet werden. Deshalb wollte ich den Wert zurückgeben und dachte, dann ist die Funktion beendet. Wie kann ich die denn nun beenden? "return false;" gibt die gleiche Fehlermeldung wie "return true;" und "break;" ist an der Stelle "invalid".

Wie Andreas schon sagte, am Ende der Funktion noch ein return false. Dadurch wird in jedem Fall ein ordentlicher Wert zurueckgegeben. Ueber den fehlenden Rueckgaewert am Ende hat sich die Fehlermeldung ja beschwert (function not always returns a value).

Du kannst aber auch einfach die Funktion verlassen, ohne etwas zurueckzugeben. Du musst nicht unbedingt was hinter return schreiben. Ohne Parameter wird die Funktion eben einfach so verlassen. Dann darfst Du aber *nie* etwas aus der Funktion zurueckgeben, musst also alle returns nackt lassen. Das ist ueberhaupt der bessere Weg.

break ist nicht fuer das "Abrechen" von Funktionen gedacht (dafuer gibt es ja return). Es beendet alle moeglichen Arten von Schleifen und switch-Bloecke. Und nach einem Label kann man es auch noch irgendwie verwenden (<../../tebh.htm#a4> und http://developer.netscape.com/docs/manuals/js/client/jsguide/stmtsov.htm#1008389).

Calocybe