I like Perl a lot. I didn't have the option
of embedding it in Navigator when I created JS, for marketing reasons -- the Netscape HTML
scripting language had to be superficially Java-like according to the VP of engineering. My
first thought was to embed Scheme, BTW, but that also fell to marketing spin, and to unproven
but intuitive "ease of use" fears that apply to Perl too.
Brendan Eich in einer Newsgruppe:
JavaScript ist nicht Java, auch wenn die eine oder andere Ähnlichkeit besteht - aber schließlich haben Sie mit C++ die gleichen Vorbilder.
JavaScript wurde von Netscape ursprünglich unter dem Namen LiveScript für dynamische HTML-Seiten und als
Serverseitige Script-Sprache entwickelt und erhielt erst Ende 95 in gemeinsamen Anouncement mit
Sun den Namen JavaScript. Wesentlicher Grund mögen wohl Marketing-Gesichtspunkte gewesen sein, wie das
Zitat des Chef-Entwicklers von JavaScript bei Netscape auf der rechten Seite zeigt.
Trotz grundlegender Unterschiede (interpretierte-Sprache, objekt-basiert und nicht objekt-orientiert)
hat JavaScript viele Sprachelemente mit Java gemeinsam, so daß Java-Programmierer auch relativ schnell JavaScript-Programme
verstehen können.
In dem gleichen Maße kann JavaScript eine Fingerübung für Java sein. Allerdings müssen sich Umsteiger klar sein,
das sie es mit vollkommen unterschiedlichen Objektwelten zu tun haben. Und in beiden Sprachen ist das Verständnis
der zur Verfügung stehenden Objekte wesentlich!
Das Schöne an JavaScript als interpretierte Sprache sind flexible Funktionen und Objekte:
Anders als bei Java braucht man kein bis ins Detail
durchgetüffteltes Objektmodell, um größere Programme zu schreiben,
auch wenn Planung im Vorfeld nie schadet.
Unterschiede zwischen Java und JavaScript
JavaScript ist keine stark typisierte Sprache, d.h. eine Variable kann eine Ganze Zahl und im nächsten Schritt eine Zeichenkette enthalten JavaScript braucht keinen Strichpunkt am Ende jedes Ausdrucks, kann ihn aber enthalten. JavaScript Methoden und Funktionen sind nicht auf den Typ des Rückgabewertes festgelegt. JavaScript hat keine objekt-orientierte Notation für Klassen, Vererbung, Instanzen und Nachrichtenaustausch.
Gemeinsamkeiten zwischen Java und JavaScript
Schleifen und Bedingungen haben den gleichen Syntax Zuweisungs- und Bedingungs-Operatoren Geschweifte Klammern für Zuweisungsgruppen C-artiger Punkt für Object-Referenz Verschiedene Schlüsselwörter JavaScript ist case-sensitiv
Der Betreiber von www.dBooks.de übernimmt keine
Verantwortung für den Inhalt und die Richtigkeit der Angaben auf
den verlinkten Websites.
Zu den üblichen NoNos gibt es keine direkten Verweise.