Pfeilfunktionen
Dauer: 15 Minuten
- Funktionen mit =>anstattfunction
Ziel: Pfeilfunktionen als alternative Syntax für Funktionen
Vorbemerkung: Für das Programmierprojekt
sind Pfeilfunktionen optional, d.h. herkömmliche
Funktionen (mit function) sind in der Regel
für alle Zwecke ausreichend.
Pfeilfunktionen mit => nach der Argumentliste
anstatt function stellen eine alternative Syntax
für Funktionen in JavaScript dar.
Oftmals haben Pfeilfunktionen eine viel kompaktere Syntax:
// Pfeilfunktionen mit => anstatt function
const add = (a,b) => { 
  return a + b; 
};
 
const substract = (a,b) => { 
  return a - b; 
};
	
const multiply = (a,b) => { 
  return a * b; 
};
	
console.log(substract(multiply(add(6,3),2),4));
// --> 14 ( = (6+3)*2-4 )Unterschiede zwischen Pfeilfunktionen und
„herkömmlichen“ Funktionen gibt es u.a. in Bezug
auf den Umgang mit this im Funktionsrumpf, siehe
dazu z.B. javascript.info .
Besteht eine Pfeilfunktionen nur aus einer Zeile bzw.
aus nur einer return-Anweisung, dann können die
geschweiften Klammern des Funktionsrumpfes und das
return weggelassen werden:
// Einzeilige Pfeilfunktionen brauchen 
// kein return und keine { }	
const add = (a,b) => a + b;
	
const substract = (a,b) => a - b;
 
const multiply = (a,b) => a * b;
	
console.log(substract(multiply(add(6,3),2),4));
// --> 14 ( = (6+3)*2-4 )Bemerkung: Die geschweiften Klammern des Funktionsrumpfes werden aber wieder benötigt, wenn der Rückgabewert bzw. das Ergebnis der Funktion ein JavaScript-Objektliteral mit geschweiften Klammern ist.)
Falls eine Pfeilfunktion nur ein Argument bzw. einen Parameter hat, dann werden bei der Argumentliste die runden Klammern nicht gebraucht und können weggelassen werden:
const square = x => x * x;
 
const plus1000 = x => x + 1000;Solch kompakte Schreibweise kommt häufig in der Webprogrammierung mit JavaScript oder React vor, wenn z.B. einfache Callback-Funktionen für Buttons o.ä. benötigt werden.
Vertiefendes Material im Mozilla Developer Network