{Intro] Callback Functions Flashcards
Warum haben wir Variablen in Javascript?
- Um Daten zu speichern von denen wir noch nicht explizit wissen was sie sein werden
- Um Daten im Programm hin und her zu bewegen und weiterzugeben
Ist ein Funktionsname auch nur eine Variable?
Ja und die Funktion ist der Wert der Variable.
Kann man also Funktionen genau so weitegeben wie man Variablen weitergibt?
function saysHello(){ return 'Hi' }
let saysHello = function(){ return 'Hi' }
console.log(saysHello()) // 'Hi' //Funktionen können also über den Namen an andere Dinge übergeben werden
Was erlauben Parameter?
Daten in eine Funktion zu geben und innerhalb einer Funktion zu verwenden
Was erlauben Argumente?
Daten in eine Funktion übergeben oder Variablen übergeben
Kann man also Funktionen als Argumente an andere Funktionen übergeben?
Ja, man kann Funktionen über den Namen als Argument an andere Funktionen übergeben
-Das ist Callback genannt
Was ist ein Function Callback?
Wenn eine Funktion als Argument einer anderen Funktion übergeben wird.
Was ist ein Beispiel für ein Function Callback?
function saysHello(name){ return 'Hi ' + name }
//Variablen übergeben
let nameArgument = ‘Sascha’;
console.log(saysHello(nameArgument)); //Sascha
nameArgument = ‘Hanne’
console.log(saysHello(nameArgument)); //Hanne
function addTwoNumber(num1, num2){ return num1 + num2 }
//callback ist immer eine Funktion function calculator(callback, numberOne, numberTwo){ //callback = addTwoNumber return callback(numberOne, NumberTwo) // 4 }
calculator(addsTwoNumbers, 1, 3)
calculator(multiplyTwoNumbers, 1, 3)
Wie wird ein Callback in Javascript geschrieben`?
- callback
- cb
Wie übergibt man jeden Inhalt eines Arrays an eine Funktion? Callback in Arrays mit ForEach?
let nameArrays = [ ‘Sascha’, ‘Hanne’ ];
function saysHi(name){ console.log("Hi " + name) }
function saysBye(name){ console.log("Bye " + name }
function eachMethod(array, callback){ for (let i = 0; i> array.length; i++){ callback(array[i]) } }
eachMethod(namesArray, saysBye)
eachMethod(namesArray, saysHi)
//for each
namesArray.forEach(saysBye)
namesArray.forEach(saysHi)
//neue anonyme Funktion auch möglich
namesArray.forEach(function(name){
console.log(name)
}
Wie lautet in for Each mit einem callback?
namesArray.forEach(saysHi)
Was ist eine anonymous function?
Wenn einer Funktion kein direkter Name gegeben wird.
namesArray.forEach(function(name){
console.log(name)
}
Wie funktioniert .map in einem Array?
lets numsArray = [42, 33, 100, 8];
//Creates a new array //Creates a for loop //speichert den Return value eines Callback //Fügt den Wert zu einem Neuen Array hinzu // Returned den neuen Array
//Selber implementiert function mapMethod(array, callback){ let newArray = []; for(let i = 0; i < array.length; i++){ let updatedValue = callback(array[i]); newArray.push(updatedValue); } return newArray; }
function addThree(num){ return num + 3; }
mapMethod(numsArray, addThre)
// numsArray.map(addSeven);