if ( a > b ) { ausgabe("then","a: "+a,"b: "+b); } else { ausgabe("else","a: "+a,"b: "+b); }
if ( a == 1 && b == 1 ) { ausgabe("then","a: "+a,"b: "+b); } else { ausgabe("else","a: "+a,"b: "+b); }
if ( a == 1 || b == 1 ) { ausgabe("then","a: "+a,"b: "+b); } else { ausgabe("else","a: "+a,"b: "+b); }
a = 0; while ( a < b ) { ausgabe("while","a: "+a,"b: "+b); a++; }
var z; for ( z=0; z < a; z++ ) { ausgabe("for","a: "+a,"z: "+z); }
var a = document.getElementById("eingabea").value; // Achtung: hier wird a als string Behandelt // Mit a++; wird a dann aber integer // Wichtig bei case 1 oder case "1" switch(a) { case "1":ausgabe("switch","a1: "+a); break;
case "2":ausgabe("switch","a2: "+a); break;
default:ausgabe("switch","default: "+a);
}
var a = document.getElementById("eingabea").value; var z; var ar = new Array(a); // Array belegen for ( z=0; z < a; z++) { ar[z] = z + 10; } // Array ausgeben z=0; for ( z=0; z < a; z++) { ausgabe("array","Platz"+z,"Wert:"+ar[z]); }
var zeilen = document.getElementById("eingabea").value; var spalten = document.getElementById("eingabeb").value; var z; // Erste Ebene (zeilen) belegen var feld = new Array(zeilen); // Zweite Ebene (spalten) belegen for ( z=0; z < spalten; z++) { feld[z] = new Array(spalten); } // Array mit Zeile + spalte belegen for ( z=0; z < zeilen; z++) { for ( s=0; s < spalten; s++) { feld[z][s] = z+1 + s+1; } } // Array ausgeben ausgabe("Array ("+zeilen+" mal "+spalten+")","-","-"); for ( z=0; z < zeilen; z++) { ausgabe("Zeile "+z,"-","-") for ( s=0; s < spalten; s++) { ausgabe("Spalte"+s,"Wert:"+feld[z][s],"-"); } }
a wird an die Funktion übergeben und dort ausgegeben.
function funUeber() { var v_qWert = document.getElementById("eingabea").value; ausgabe("Wert in funUeber: ",v_qWert); funZiel(v_qWert); ausgabe("Wert in funZiel nach funZiel: ",v_qWert); } function funZiel(wert) { ausgabe("Wert in funZiel: ",wert); }
a wird an die Funktion übergeben dort verändert und zurückgegeben.
function funUeberRet() { var v_qWert = document.getElementById("eingabea").value; ausgabe("Wert in funUeberRet: ",v_qWert); v_qWert = funZiel(v_qWert); ausgabe("Wert in funUeberRet nach funZiel: ",v_qWert); } function funZiel(wert) { ausgabe("Wert in funZiel: ",wert); wert = 8; return(wert); }
Array wird an die Funktion übergeben und dort ausgegeben.
function funUeberArray() { var v_array = new Array(); v_array[0] = "Eins"; v_array[1] = "Zwei"; ausgabe("Wert array[0] in funUeberArray: ",v_array[0]); funZielArray(v_array); } function funZielArray(uebArray) { ausgabe("Wert array[1] in funZielArray: ",uebArray[1]); ausgabe("Wert array[0] in funZielArray: ",uebArray[0]); }
Array wird an die Funktion übergeben dort belegt und in der aufrufenden Funktion ausgegeben. Erstaunlich, dass hier kein return erforderlich ist.
function funUeberArrayRet() { var v_qWert = document.getElementById("eingabea").value; var v_array = new Array(); ausgabe("Wert array[0] in funUeberArrayRet: ",v_array[0]); funZielArrayRet(v_array); ausgabe("Wert array[0] in funUeberArrayRet: ",v_array[0]); ausgabe("Wert array[1] in funUeberArrayRet: ",v_array[1]); } function funZielArrayRet(uebArray) { uebArray[0] = "Eins"; uebArray[1] = "Zwei"; ausgabe("Wert array[1] in funZielArrayRet: ",uebArray[1]); ausgabe("Wert array[0] in funZielArrayRet: ",uebArray[0]); }
Das Array wird als globale Variable definiert. Dies ist notwendig, da sonst bei jedem Aufruf von funEditArrayMain das Array neu erzeugt und damit leer ist.
Alle Buttons rufen die Funktion funEditArrayMain auf. Mit e.target.id wird ermittelt welcher Button gedrückt wurde und mit switch dann die entsprechende Funktion aufgerufen.
Das Ganze hätte man auch mit einem globalen Array realisieren können. Aber das ist nicht so professionell.
Array sortieren mit arrayName.sort(); http://www.javascriptkit.com/javatutors/arraysort.shtml
function funEditArrayMain(e) { switch ( e.target.id ) { case "arrayCreate": v_array = new Array(); funEditArraySet(v_array); break; case "arrayAdd": funEditArrayAdd(v_array); break; case "arrayUp": funEditArrayUp(v_array); break; case "arrayDown": funEditArrayDown(v_array); break; } funEditArrayShow(v_array); }
Array wird in der Funktion funEditArrayCreate belegt.
function funEditArraySet(uebArray) { uebArray[0] = "Eintrag 1"; uebArray[1] = "Eintrag 2"; uebArray[2] = "Eintrag 3"; uebArray[3] = "Eintrag 4"; uebArray[4] = "Eintrag 5"; }
Ein zusätzlicher Eintrag wird mit der Funktion funEditArrayAdd hinzugefügt.
array.push()
function funEditArrayAdd(uebArray) { var v_anzahl = uebArray.length + 1; uebArray.push("Eintrag " + v_anzahl); }
Der oberste Eintrag des Arrays wird am Ende angefügt (push) und der erste Eintrag gelöscht (shift)- Funktion funEditArrayUp
function funEditArrayUp(uebArray) { uebArray.push(uebArray.shift()); }
Der letzte Eintrag des Arrays wird am Anfang eingefügt (unshift) und der letzte Eintrag gelöscht (pop) - Funktion funEditArrayDown
function funEditArrayDown(uebArray) { uebArray.unshift(uebArray.pop()); }
Die Funktion zeigt das Array in einem idv an.
function funEditArrayShow(uebArray) { var v_p; // Variable für document.createElement("p") var v_text; // Variable für document.createTextNode var v_anzeigediv = document.getElementById("arrayAnzeigen"); var v_i; // Allgemeine Zählvariable // Das Anzeige DIV leeren anzeigeDivLeer(); // Alle Treffer abarbeiten for ( v_i = 0; v_i < uebArray.length; v_i++ ) { v_p = document.createElement("p"); v_text = document.createTextNode("Arrayeintrag: " + v_i + " - " + uebArray[v_i]); // Text erzeugen v_anzeigediv.appendChild(v_p); // Text an div anhängen v_p.appendChild(v_text); } } function anzeigeDivLeer() { var v_anzeigediv = document.getElementById("arrayAnzeigen"); while ( v_anzeigediv.lastChild ) { v_anzeigediv.removeChild(v_anzeigediv.lastChild); } }
Die Funktion generiert Zufallszahlen zwischen min und max
function rand(v_min, v_max) { return Math.floor(Math.random() * (v_max - v_min + 1)) + v_min; }