Informatik :: JavaScript :: Lineare Programmstruktur
Begriff | Erklärung |
---|---|
Maschinensprache | System von Anweisungen und Daten, die der Prozessor eines Computers direkt ausführen kann. Dabei handelt es sich um einen für den Menschen kaum verstehbaren Binärcode. |
Höhere Programmiersprache | (engl. high level language) ermöglicht die Abfassung eines Computerprogramms in einer Sprache, die für Menschen, aber nicht unmittelbar für Computer verständlich ist. Z. B.: C++, Delphi, Java, Visual Basic, VBA |
Syntax | System von Regeln, nach denen erlaubte Konstruktionen bzw. Ausdrücke aus einem grundlegenden Zeichenvorrat ("Alphabet") gebildet werden. |
Programmierumgebung | Programm, das sowohl Editor, Debugger, Compiler u.a. nützliche Programmierwerkzeuge enthält. |
Editor | Programm zur Eingabe des Quellcodes. |
Debugger | Programm, das vor der Übersetzung Code auf Syntaxfehler (bugs) überprüft. |
Compiler | Programm, das die jeweilige Programmiersprache vor Programmstart in Maschinensprache übersetzt. |
Interpreter | Programm, das die jeweilige Sprache während des Programms übersetzt. Z. B.: Browser interpretiert HTML-Quellcode |
Prozedur | Programm / Programmteil, das / der kein Ergebnis zurückgibt, sondern nur bestimmte Anweisungen ausführt. |
Funktion | Programmteil, der ein bestimmtes Ergebnis zurückgeben kann. |
Kommentar | Erläuterung des Quellcodes für den Programmierer |
Variable | Platzhalter, der wie konstanter Wert verwendet werden, aber verschiedene Werte annehmen kann. |
Variablendeklaration | Variable wird dem System bekannt gemacht, d.h. es wird entsprechend des Datentypes Speicherplatz im Hauptspeicher reserviert. |
Konstante | Platzhalter, der wie konstanter Wert verwendet werden und seinen Wert nicht ändern kann. |
Konstantendeklaration | Konstante wird dem System bekannt gemacht, d.h. es wird entsprechend des Wertes Speicherplatz im Hauptspeicher reserviert. |
Im Gegensatz zu anderen Programmiersprachen wie z.B. C++ oder VisualBasic kennt JavaScript keine der üblichen Datentypen. Und wenn man unbedingt einen Vergleich mit andern Sprachen vornehmen will, dann käme für JavaScript als ähnlicher Datentyp am ehesten der Typ Variant aus Visual Basic in Frage. Während in anderen Sprachen eine Variable mit ihrer Deklaration unwiderruflich für einen bestimmten Datentyp bestimmt ist, kann man in JavaScript der Variablen beliebige Inhalte zuweisen. So ist es ohne weiteres möglich, in der Deklaration einen Zahlenwert zuzuweisen und später eine Zeichenkette oder einen Wahrheitswert.
Prinzipiell kann man zwischen drei verschiedenen Datenformen unterscheiden:
Unter einer Variablen kann man einen Speicherbereich verstehen, in der ein Wert bzw. Datum zur späteren Verwendung abgelegt wird.
Die Deklaration einer Variablen erfolgt mit ihrer ersten Aufzählung und kann auf zwei verschiedene Arten erfolgen:
i=5;
Name="Müller";
var i;
var i=5
Hinweis:
Wenn man die Variablen stets am Anfang eines Programms mit Hilfe von var deklariert, dann behält man leichter den Überblick über die im Programm eingesetzten Variablen.
Sobald einer Variablen ein Wert zugewiesen wurde, kann man diesen innerhalb des Programms verwenden. Doch dabei sind einige Grenzen gesetzt, die davon abhängig sind, wo die Variable deklariert wurde:
Wenn die Deklaration innerhalb einer Funktion
vorgenommen wurde, dann ist die Variable auch nur innerhalb dieser Funktion
gültig.
In diesem Fall spricht man von einer lokalen Variablen.
Nach dem Verlassen der Funktion geht nicht nur der Inhalt der Variablen
verloren, sondern ihr reservierter Bereich im Speicher wird wieder frei
gegeben.
Wird die Deklaration der Variablen dagegen außerhalb einer Funktion vorgenommen, dann ist sie so lange gültig, wie die HTML-Datei im Browser angezeigt wird. Hier wird von einer globalen Variablen gesprochen. Auf diese Variable und ihren Inhalt kann man auch von anderen Funktionen aus zugreifen.
Wie die gesamte Syntax von JavaScript unterliegt auch die Vergabe von Namen strengen Regeln:
Es empfiehlt sich, den Namen der Variablen nach deren Verwendung zu wählen --> sprechende Bezeichner
Beispiel:
var test;
test=5; test=test+3;
test="Müller"
test=true; test=test+2;
test='12345'; test=test+2;
Operatoren sind reservierte Zeichen, die dafür sorgen, dass man mit den Werten sinnvoll arbeiten kann.
Prinzipiell sind für uns folgende drei Arten von Operatoren interessant:
Mit arithmetischen Operatoren kann man mathematische Operationen mit Werten ausführen.
Die Schreibweise der entsprechenden Anweisung entspricht dabei der üblichen Formulierung einer Rechenaufgabe.
Operator | Beschreibung | Beispiel |
---|---|---|
+ | addiert Zahlen und fügt Zeichenketten zusammen | |
++ | addiert 1 (Inkrementieren) | |
- | subtrahiert Zahlen | |
-- | subtrahiert 1 (Dekrementieren) | |
* | multipliziert Zahlen | |
/ | dividiert Zahlen | |
% | liefert den ganzzahligen Rest bei Division 2er ganzer Zahlen | 7 % 3 --> 1 bzw. 19 % 4 --> 3 |
Eine Ausnahme bilden hierbei die beiden Operatoren ++ und --. Diese verkürzte Schreibweise findet oft in Zählschleifen Verwendung, bei denen mit jedem Durchlauf die Zählvariable um den Wert 1 erhöht bzw. vermindert wird.
Vergleichsoperatoren werden uns in erster Linie bei der Ausführung von bedingten Anweisungen und bei der Überprüfung von Bedingungen für z.B. Schleifen begegnen.
Mit ihrer Hilfe erfolgt die Überprüfung einer Bedingung auf ihren Wahrheitswert. Mit
dem Erfüllen der Bedingung, was dem Wahrheitswert true entspricht,
kann dann z.B. die Schleife beginnen, bei Nichterfüllung (false) wird
sie beendet.
Operator | Beschreibung |
---|---|
== | gleich |
!= | ungleich |
< | kleiner |
<= | kleiner gleich |
>= | größer gleich |
> | größer |
Mit logischen Operatoren werden Aussagen miteinander verknüpft.
Operator | Beschreibung |
---|---|
&& | logisches AND (UND) |
|| | logisches OR (ODER) |
! | logisches NOT (NICHT) |
Mit Hilfe mathematischer Funktionen lassen sich Werte berechnen.
Die wichtigsten in JavaScript implementierten Funktionen sind in folgender Tabelle zusammengefasst:
Funktion | Beschreibung | Beispiele |
---|---|---|
Math.pow(basis,exponent) | potenziert basis mit exponent und gibt diesen Wert zurück | Math.pow(2,5) --> 32 Math.pow(10,-2) --> 0.01 Math.pow(64,0.5) --> 8 Math.pow(64,-0.5) --> 0.125 |
Math.sqrt(zahl) | gibt die Quadratwurzel aus zahl zurück | Math.sqrt(25) --> 5 Math.sqrt(0.01) --> 0.1 |
Math.abs(zahl) | gibt den absoluten Betrag von zahl zurück | Math.abs(-12) --> 12 Math.abs(0.345) --> 0.345 |
Dialogboxen dienen prinzipiell dazu, wie der Name schon sagt, mit dem Nutzer in Dialog zu treten.
Während die alert-Box und die confirm-Box nur eine Textmeldung ausgeben, ist mit Hilfe der prompt-Box die Eingabe eines Wertes möglich.
Code | Beschreibung | Rückgabe- wert(e) | Beispiel |
---|---|---|---|
alert ("Textmeldung") | Textmeldung mit Schaltfläche OK | true | ![]() |
confirm ("Textmeldung") | Textmeldung mit Schaltflächen OK und Abbrechen | true, false | ![]() |
prompt ("Textmeldung","Vorbelegung") | Textmeldung mit Eingabefeld und Schaltflächen OK und Abbrechen | Eingabewert als Zeichenkette, false | ![]() |
Hinweis:
Eingaben über eine prompt-Dialogbox sind immer Strings (Zeichenketten)!Beispiel:
a = prompt ("1. Zahl eingeben!","");
b = prompt ("2. Zahl eingeben!","");
a = parseFloat (a);
b = parseFloat (b);
su=a+b;
alert("Die Summe von "+a+" und "+b+" ist "+su)
Um Werte direkt im Browserfenster auszugeben (zu schreiben), verwendet man die Methode write().
Sie wird auf das Objekt document angewandt.
Man schreibt:
document.write()
Beispiele:
document.write("Hallo!")
document.write(a)
document.write("Zahl=" + a)
Mit der Methode write() kann man dem Browser auch reinen HTML-Code als Zeichenkette übergeben, der entsprechend interpretiert wird.
Beispiel:
a = "Herr Meier";
b = 76;
window.document.write("<h2>"+a+" ist "+b+" Jahre
alt.</h2>");
Erläuterung:
Nachdem der Variablen a die Zeichenkette Herr Meier und
der Variablen b die Zahl 76 zugewiesen wurden, erfolgt die Bildschirmausgabe
als Überschrift: Herr Meier ist 76 Jahre alt.
Zur Erstellung von Struktogrammen empfehle ich das Programm Strukted32, das ich hier zum Download bereitstelle.