Einführung in JavaScript II

Slides:



Advertisements
Ähnliche Präsentationen
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Advertisements

Hochschule Fulda – FB ET Sommersemester 2010
Verzweigung oder bedingte Anweisung Weiter mit PP.
Einführung in JavaScript I
9. Syntaxdiagramme und Backus-Naur-Form (BNF)
10. Grundlagen imperativer Programmiersprachen
Spec# Proseminar Assertions im SS 2007 Uni Paderborn Andreas Martens Betreuer: Dipl. Inform. Björn Metzler.
Programmierkurs für absolute Anfänger Listen und Arrays Caren Brinckmann Sommersemester 2005.
SWITCH - Anweisung.
SWITCH - Anweisung.
Verzweigung oder bedingte Anweisung Weiter mit PP.
Java- Syntax.
? Grammatik  Orthographie ?
Boolesche Ausdrücke Ist der Rückgabewert eines Ausdrucks vom Typ boolean, so wird dieser als Boolescher Ausdruck bezeichnet (nach dem Mathematiker George.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher bekannt: Einfache Variable Feld Vereinbarung Zuweisung Block while-Schleife Bedingte Anweisung (if) Typ.
DVG Ablaufsteuerung
Einführung in die Programmierung Datensammlung
Einführung in die Programmierung Anweisungen und Datentypen
Verzweigung.
Informatik Grundkurse mit Java
Struktogramme IF-ELSE FOR – Schleife
Java & Greenfoot Grundlagen.
Grundkonzepte Java - Klassendefinition
Informatik 1 Übung 2.
Wenn Programme Entscheidungen fällen müssen, dann …
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Auswahlanweisungen, Iterationsanweisungen, Blöcke, Sprunganweisungen
Programiersprache Mustafa SÖYLEMEZ e
Purga - Scriptengine Ein Einblick.
Informatik II Grundlagen der Programmierung Programmieren in C Programmstrukturen / Kontrollstrukturen Hochschule Fulda – FB ET Sommersemester 2014.
Algorithmen und Datenstrukturen Übungsmodul 8
Algorithmen und Datenstrukturen Übungsmodul 3
Einführung in PHP.
Einführung in PHP 5.
CuP - Java Sechste Vorlesung Entspricht ungefähr Kapitel 3. 1 – 3
Datentypen: integer, char, string, boolean
Agenda für heute, 20. April, 2006 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Agenda für heute, 14. April, 2005 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Vorlesung 3. if else Anweisung if (Ausdruck) Anweisung1 else Anweisung2 Ausdruck hat einen von 0 verschiedenen Wert, so wird Anweisung 1 ausgeführt. Bei.
PHP: Operatoren und Kontrollstrukturen
Hochschule Fulda – FB ET Sommersemester 2014
Programmiervorkurs WS 2014/15 Schleifen
Algorithmen und Datenstrukturen 1 SS 2002
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Schleifen
Das Java-Hamster-Modell
Software Engineering Struktogramme
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
SQL-Prozeduren Charakteristika: Kapselung von SQL-Anweisungen in Prozeduren, die wiederholt aufgerufen werden können. Dazu Verbergen parametrisierter SQL-
Lernlandkarte OOP (ObjektOrientiertes Programmieren)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 4. Vorlesung WS 2001/2002.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
MATLAB Control Statements.
Einführung in die Programmierung mit Java
Einführung in Java PING e.V. Weiterbildung Andreas Rossbacher 24. März 2005.
 Sortigkeit oder Arität
Einführung in die Programmiersprache C 2
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Fallunterscheidung und Iteration Programmierung I Prof. Dr. Michael Löwe.
TRUE und FALSE in C Der Wert 0 steht für FALSE Jeder von 0 verschiedene Wert steht für TRUE FALSE wird als 0 dargestellt TRUE wird als 1 dargestellt.
Java-Kurs - 2. Übung primitive Datentypen, Konstanten
Unterschiedliche Kontrollstrukturen
Arten von Kontrollstrukturen
Unterschiedliche Arten von Kontrollstrukturen
Kara: act()-Methode.
 Präsentation transkript:

Einführung in JavaScript II Musikwissenschaftliches Institut Hamburg WS 2005/06 Klaus Frieler

JavaScript II Verzweigungen (if-else) Wichtiges Element einer jeden Programmiersprache ist die bedingte Ausführung von Anweisungen, d.h. Verweigungen. Syntax: if (<bedingung>) <anweisungen1> [else <anweisungen2>] <bedingung> ist ein beliebiger logischer Ausdruck (in runden Klammern) und <anweisungen1/2> eine Anweisung oder ein Anweisungsblock in geschweiften Klammern. Anweisungen können auch wieder Verzweigungen sein. Der else -Zweig ist optional. Semantik: Ist die Bedingung wahr wird <anweisungen1> ausgeführt, falls nicht wird entweder nichts getan oder der <anweisungen2> ausgeführt (mit else-Zweig)

JavaScript II Verzweigungen (if-else) Beispiele: if (moin<0) alert("Zu klein"); if(moin<1) moin = 0; else moin--; if(moin<0) moin = 0; else if(moin>=5) moin = 5; else{ moin = moin++; alert(moin); }

JavaScript II Verzweigungen (?-Operator) Programmierer sind faul, deswegen gibt es für eine einfache Entweder-Oder-Abfrage eine spezielle Kurzschreibweise, den ?-Operator Syntax: <variable> = (<bedingung>) ? <wert1> :<wert2> Semantik: Dies ist gleichbedeutend mit: if (<bedingung>) <variable> = <wert1>; else <variable> = <wert2>;

JavaScript II Verzweigungen (?-Operator) Beispiele: moin = (moin<0) ? 0 : moin; alert( (moin<0) ? "Zu klein" : "Genau richtig"); alert((moin<0) ? "Zu klein" : (moin>5) ? "Zu groß" :"Genau richtig");

JavaScript II Verzweigungen (switch-case) Um mehrer Fälle unterscheiden zu können gibt es die switch-case Anweisung. Syntax: switch(<variable>){ case <wert1>: <anweisung> [break;] [case <wert2>: <anweisung> [break;] ] [case …] [default: <anweisung> [break;]] }

JavaScript II Verzweigungen (switch-case) Semantik: Der Wert der Variable <variable> wird mit den Werten hinter den case-Schlüsselworten verglichen, sind sie identisch wird der Anweisungsblock dahinter ausgeführt. (Fehlt das Schlüsselwort break; werden auch alle Anweisungen alle folgenden Fälle ausgeführt (Fall-through) bis zum nächsten break!) Trifft keiner der Fälle zu, werden die Anweisungen hinter dem optionalen default-Fall ausgeführt.

JavaScript II Verzweigungen (switch-case) Beispiele: switch(moin){ case 1: alert("1"); break; case 2: alert("2"); default: alert("Alles andere."); }

JavaScript II Schleifen Ein weiteres grundlegendes Element jeder Programmiersprache sind Schleifen,d.h. Anweisungen werden solange wiederholt bis eine bestimmte Bedingung eintritt. Es gibt drei Typen von Schleifen in JavaScript: while, do-while und die for-Schleife

JavaScript II Schleifen – while-Schleife Syntax: while(<bedingung>) <anweisungen> <bedingung> kann eine beliebiger logischer Ausdruck sein, <anweisungen> eine einzelne Anweisung oder eine Anweisungsbock in geschweiften Klammern.

JavaScript II Schleifen – while-Schleife Beispiele: while(true) i = i+1; (Achtung:Endlosschleife!) while(false) i = i+1; (Achtung:Keine Schleife!) i = 0; while(i<10){ i = i+1; alert(i); }

JavaScript II Schleifen – do-while-Schleife Syntax: do <anweisungen> while(<bedingung>) <bedingung> kann eine beliebiger logischer Ausdruck sein, <anweisungen> eine einzelne Anweisung oder eine Anweisungsbock in geschweiften Klammern. Unterschied zur while-Schleife: Die Anweisungen werden mindestens einmal ausgeführt, weil die Bedingung erst am Ende geprüft wird.

JavaScript II Schleifen – for-Schleife Syntax: for([<anweisung1>];[<bedingung>];[<anweisung2>]) <anweisungen> <anweisung1> ist einfache Anweisung (kein Block!), zumeist Initialisierung einer Laufvariablen; <bedingung> ist die Abbruchbedingung <anweisung2> ist einfache Anweisung, zumeist Variation (z.B. Hochzählen) der Laufvariablen Alle drei Angaben sind optional!

JavaScript II Schleifen – for-Schleife Beispiele: for(j = 0; j<3; j++) alert(j); for(i = 10; i>=0; i -= 2){ zahl += i; alert(zahl * zahl); } for(;;) alert("Endlosschleife");

JavaScript II Schleifen – break und continue Mit den Schlüsselwörter break und continue kann man alle Schleifen beeinflussen. Durch break wird die Schleife sofort beendet. Durch continue wird an den Anfang des Schleifenblocks gesprungen. Bei der for-Schleife wird dabei noch <anweisung2> ausgeführt und <bedingung> geprüft.

JavaScript II Schleifen – break und continue Beispiel: while(true){ if(i==10) break; i = i + 1; } for(i = 0; i<10; i++){ if(i % 2) continue; alert(i);

JavaScript I Funktionen Funktionen sind Unterprogramme, d.h. wieder verwendbare Programmteile Sie können mit Parametern aufgerufen werden und können einen Wert zurückgeben Jede komplexere Anweisungsfolge, die in einem Script mehrmals benutzt werden, sollten in Funktionen gekapselt werden. Sammlungen von Funktionen nennt man auch (Funktions-)Bibliotheken. (Z.B. dll‘s bei Windows)

JavaScript I Funktionen Syntax: function <name>([Parameterliste]) { <anweisungen> [return <value>;] } <name> ist ein Bezeichner der den selben Regeln wie Variablennamen unterworfen ist Die Parameterliste ist optional, sie besteht aus einer durch Komma getrennte Liste von Variablennamen, den Argumenten der Funktion. Die geschweiften Klammern sind zwingend. Im Funktionsrumpf können beliebige Anweisungen stehen. Die return-Anweisung ist optional. Der dort angegebene Wert ist der Rückgabewert.

JavaScript I Funktionen Beispiele: function leer() { } function ausgabe(text) alert(text); function mult(x,y) var z = x*y; return z;

JavaScript I Funktionen Funktionen dürfen sich auch selbst aufrufen, dass nennt man Rekursion. Sehr elegant, aber nicht immer effizient und potentiell gefährlich (Endlosschleife). Beispiel: function fakultaet(n) { if(n <= 1) return 1; return n*fakultaet(n-1); }

JavaScript I Objekte Objekte sind Konstrukte die Variablen und Funktionen unter einem gemeinsamem Dach vereinen. In JavaScript kann man eigene Objekte definieren, aber meisten benutzt man nur die vordefinierten Objekte (z.B. window, document), vor allem um auf den Browser und die HTML-Seite zuzugreifen. Variablen eines Objektes heißen „Membervariablen“ und Funktionen heißen auch „(Objekt)Methoden“

JavaScript I Objekte Auf die Variabeln und Funktionen eines Objektes greift man durch die Punktschreibweise zu. Bespiel: myObject.myVariable = 5; test = myObject.myFunction(myObject.myVariable); Objekte können auch wieder Unterobjekte haben. Auch auf sie greift man durch die Punktschreibweise zu: myObject.mySubobject.myVar = 5; test = myObject.mySubobject.myFunction(myObject.myVariable);

JavaScript I Objekte Z.B. ist jeder String in JavaScript eigentlich ein Objekt! Beispiel: var text ="Teststring"; if(text.charAt(0) == "T") alert("Beginnt mit T!") else alert("Beginnt nicht mit T!"); for(i = 0; i<text.length; +i){ alert(text.charAt(i)); }

JavaScript I Arrays Arrays sind ebenfalls grundlegende Elemente vieler Programmiersprachen Ein Array ist eine Zusammenfassung vieler gleichartiger Variablen unter einem gemeinsamen Namen. Die einzelnen Elemente kann man durch einen Index ansprechen, z.B. vektor[0] Der Index ist 0-basiert, d.h. das erste Element wird durch den Index 0 angesprochen. In JavaScript sind Arrays durch das eingebaute Array-Objekt realisiert.

JavaScript I Arrays Beispiel: //erzeugen eines leeren Arrays var empty= new Array(); //erzeugen eines Arrays mit 5 Zahlen var vektor= new Array(1, 2, 3, 4, 5); /*Die Membervariable "length" enthaelt die Laenge des Arrays*/ for(i = 0; i< vektor.length; ++i){ vektor[i] = vektor[i]* vektor[i]; }

JavaScript I Arrays Beispiel: Umwandeln eines Strings in ein Zeichenarray: var text ="Teststring"; var charArray= new Array(); for(i = 0; i<text.length(); ++i){ charArray[i] = text.charAt(i); }