03 – JavaScript – Operatoren – Array-Funktionen

Logische Operatoren

&& A !A     || A !A
B true false B true true
!B false false !B true true

 

A && B AND true wenn beide Bedingungen erfüllt sind
A || B OR true, wenn mindestens eine Bedingung erfüllt ist
!A NOT true, wenn A false

! (A&&B) NAND NICHT-UND-Verkn., nur false, wenn A und B true
! (A || B) NOR NICHT-ODER-Verkn., nur true, wenn A und B false
!A&&B || A&&!B XOR exklusives ODER true, wenn nur A oder nur B false
A&&B || !A&&!B NOR exklusives NICHT-ODER true, wenn A und B übereinstimmen

Beispiele

var a=5, b=7, c=11;
if(c-b<=a && !(b>c))     ---> wahr
var a=5, b=7, c=11;
if (!(a+b>c || c-b!<a)); ---> a+b>c ist wahr also ist die Aussage schon wahr. Das '!' verneint die Aussage. Das heißt die IF Anweisung wird ausgeführt wenn ein FALSE herauskommt wie in dem Beispiel.

Vergleichsoperatoren

OPERATOR BESCHREIBUNG BEISPIEL
Gleich == if(x==y), wenn x gleich y
Nicht Gleich != if(!=), wenn x nicht gleich y
Strenges Gleich === if(===), wenn x identsich y (auch Datentyp)
Strenges Nicht-Gleich !== if(!==), wenn x gleich aber nicht identisch
Größer als > if(>), wenn x größer y
kleiner als < if(<), wenn x kleiner y
Größer oder Gleich >= if(>=), wenn x größer oder gleich y
Kleiner oder Gleich <= if(<=), wenn x kleiner oder gleich y

 

Zuweisungsoperatoren

= Einfache Wertzuweisung A = 5 A -> 5
+= Addition und Zuweisung A += 5 A -> 10
‚Ei‘ += ‚gelb‘ -> ‚Eigelb‘
-= Subtraktion und Zuweisung A -= 2 A -> 8
*= Multiplikation und Zuweisung A *= 2 A -> 16
/= Division und Zuweisung A /= 2 A -> 8
%= Modulo-Operation und Zuweisung A /= 3 A -> 2

 

Einfacher Bedingungsoperator

Syntax:
var result = bedingung ? true : false

Beispiel:
var a = 5;
var ergebnis = a<5 ? "Hermann":"Elvira";

Der Variablen ‚ergebnis‘ wird der Wert ‚Hermann‘ zugeweisen, wenn die Bedingung ‚a<5‘ ‚true‘ ist. Ist die Bedingung ‚false‘ wird ‚Elvira‘ zugewiesen.


 

ARRAY Funktionen

Quelle: Link

array.sort()

Javascript array.sort([compare]) sortiert die Elemente eines Arrays in lexikalische Folge (wobei 30 vor 4 rangiert), und zwar abhängig von Groß- und Kleinschreibung. Andere Sortierfolgen werden durch den optionalen Parameter compare als Funktion implementiert. Die Methode ändert den Inhalt des Arrays.

var colors = new Array("rote Haare", "Grünton", "gelb", "Oliv", "Grauzone");
var numbers = new Array (600, 204, 13, 2.4, 7, -15,3, -2.3e3);
var bool = new Array (true, false, true, true, false);
var mixed = new Array (100, "King Kong", 205, true);
colors.sort();
bool.sort();
mixed.sort();
numbers.sort();
	
alert(colors + "\n" + bool + "\n" + mixed + "\n" + numbers);    
   // Ausgabe    Grauzone,Grünton,Oliv,gelb,rote Haare
   //            false,false,true,true,true
   //            100,205,King Kong,true
   //            -15,-2300,13,2.4,204,3,600,7

Wenn eine andere Sortierfunktion gefordert ist, kann eine Funktion als Argument übergeben werden. Diese Funktion soll zwei Werte vergleichen und einen Wert zurückgeben, der die Sortierreihenfolge feststellt:

  • -1, wenn das erste Element vor dem folgenden stehen soll,
  • 1, wenn das zweite Element vor dem ersten rangieren soll,
  • 0, wenn die beiden Elemente gleich sind und in beliebiger Folge stehen können.

Wenn Zahlen miteinander verglichen werden, braucht die Vergleichsfunktion nur die zweite von der ersten Zahl subtrahieren:

var numbers = new Array (600, 204, 13, 2.4, 7, -15,3, -2.3e3);
function numSort(a, b) { 
   return (a - b);
} 
numbers.sort(numSort);
alert(numbers);              // Ausgabe -2300,-15,2.4,3,7,13,204,600
var trees = new Array("Kokospalme", "Rotbuch", "Tanne", "Birke", "Ahornbaum");

function len(a, b) {
   var sort = (a.length < b.length) ? -1 : (b.length < a.length) ? 1 : 0;
   return sort;
}

trees.sort(len);
alert(trees);              // Ausgabe: Tanne,Birke,Rotbuch,Ahornbaum,Kokospalme

Die Funktion len(a, b) vergleicht die Länge zweier Strings und gibt

-1 zurück, wenn a länger als b ist,
1, wenn b länger als a ist und
0 sonst.

trees.sort(len) sortiert das Array trees nach der Länge der Strings.

 

array.join()

Javascript join(Trennzeichen) konvertiert die Elemente des Arrays in einen String und verbindet sie zu einem langen String. Das Trennzeichen oder »Separator« (Vorgabe: Komma) trennt die einzelnen Elemente des Arrays voneinander. Der Inhalt des Arrays wird nicht geändert.

var colors = new Array("rot", "grau", "gelb", "blau", "rosa");
var aString = colors.join(" || ");
	
alert(aString);            // Ausgabe:  rot || grau || gelb || blau || rosa

Die Anweisung var aString = colors.join(" || "); verbindet alle Elemente des Arrays colors zu einem String und setzt “ || “ zwischen die vormaligen Arrayelemente. Das Ergebnis wird der Variablen aString zugewiesen.

array.pop()

Javascript pop entfernt das letzte Element aus dem Array und gibt dieses Element zurück.

var trees = new Array("Kokospalme", "Rotbuch", "Tanne", "Birke", "Ahornbaum");
var last = trees.pop();
alert ("trees " + trees + " last " + last);   
// Ausgabe trees Kokospalme,Rotbuch,Tanne,Birke last Ahornbaum

var last = trees.pop();
entfernt das letzte Element aus dem Array trees und weist das Element der Variablen last zu.

array.push()

Javascript push fügt ein oder mehrere elemente am Ende des Arrays an und gibt die neue Länge des Arrays zurück

var trees = new Array("Kokospalme", "Rotbuch", "Tanne", "Birke", "Ahornbaum");
var len = trees.push("Hibiskus", "Pappel");
alert ("trees " + trees + " len " + len);
// trees Kokospalme,Rotbuch,Tanne,Birke,Ahornbaum,Hibiskus,Pappel len 7

var len = trees.push("Hibiskus", "Pappel");
fügt die Elemente „Hibiskus“ und „Pappel“ am Ende des Arrays trees ein und weist der Variablen len die neue Länge des Arrays zu.

array.reverse()

Javascript reverse kehrt die Reihenfolge der Elemente in einem Array um.

var days = new Array("Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag");
days.reverse();
	
alert(days);              
//Ausgabe: Freitag,Donnerstag,Mittwoch,Dienstag,Montag

Der Aufruf days.reverse();
kehrt die Reihenfolge der Arrayelemente um, so dass das letzte Element zum ersten Element wird.

array.shift()

Javascript shift entfernt das erste Element des Arrays und läßt die folgenden Elemente um einen Index nach vorn rutschen – die Elemente des Arrays werden nach links verschoben und das erste Element fällt dabei aus dem Array heraus.

var colors = new Array("rot", "grau", "gelb", "blau", "rosa");
var elem = colors.shift();
	
alert("colors " + colors + " elem " + elem);
// Ausgabe colors grau,gelb,blau,rosa elem rot

var elem = colors.shift();
weist den Wert des ersten Elements der Variablen elem zu und entfernt das erste Element aus dem Array colors.

array.slice()

Javascript slice(start[, end]) schneidet einen Bereich aus einem Array aus und gibt den ausgeschnittenen Bereich zurück.

Start ist die Anfangsposition und end die Position nach dem ausgeschnittenen Bereich.

Wenn eine der beiden Zahlen negativ ist, wird vom Ende des Arrays aus gezählt. Das Originalarray bleibt erhalten.

                        0       1       2        3        4
var names = new Array("Anna", "Benno", "Emma", "Lasse", "Molly");

var a = names.slice(0,3);
var b = names.slice(4);
var c = names.slice(0, -2);

alert(a + "\n" + b + "\n" + c);

// gibt aus: 
// Anna,Benno,Emma
// Molly
// Anna,Benno,Emma

names.slice(0,3);
schneidet die Elemente vom Index 0 bis zum Index vor 3 aus,

names.slice(4);
schneidet das Element mit dem Index 4 aus,

names.slice(0, -2);
schneidet die Elemente vom Index 0 bis zum Index 4-2=2 aus.

array.splice()

Javascript splice(start, c [, elem1, elem, …, elemC]) fügt c Elemente, die als Parameter elem1, elem2, … elemC aufgeführt sind, in ein Array array ab Position start ein und überschreibt dabei vorhandene Elemente.

Werden die optionalen Parameter elem1, elem2, … , elemC nicht benutzt, löscht splice(start,anzahl) anz Elemente ab Position start.

//                        0       1       2       3       4       5
var colors = new Array("rot", "grün", "blau", "gelb", "oliv", "grau");

colors.splice(0, 3, "lila", "braun", "ocker");
alert( colors );           // Ausgabe: lila,braun,ocker,gelb,oliv,grau

colors.splice(2, 4);
alert( colors );           // Ausgabe: lila,braun

Die Anweisung
colors.splice(0, 3, "lila", "braun", "ocker");
schneidet ab Position 0 drei Elemente aus colors und setzt drei neue Elemente lila, braun und ocker hinzu. Also enthält das Array colors am Ende der Anweisung „lila, braun, ocker, gelb, oliv, grau“.

colors.splice(2, 4);
schneidet ab Position 2 vier Elemente aus colors aus, so dass lila und braun bleiben.

Die Methode verändert das Array. Alles was aus dem Array herausgeschnitten wurde, kann einer Variablen übergeben werden.

 

Print Friendly, PDF & Email

Schreibe einen Kommentar