logo

TypeScript-pijlfunctie

ES6-versie van TypeScript biedt een pijlfunctie die de afkorting syntaxis voor het definiëren van de anonieme functie, dat wil zeggen voor functie-expressies. Het functie-trefwoord wordt weggelaten. We kunnen het een dikke pijl noemen (omdat -> een dunne pijl is en => een ' vet ' pijl). Het wordt ook wel een Lambda-functie . De pijlfunctie heeft lexicale scoping van ' dit ' trefwoord.

De motivatie voor de pijlfunctie is:

  • Wanneer we de functie niet hoeven te blijven typen.
  • Het geeft lexicaal de betekenis van dit trefwoord weer.
  • Het geeft lexicaal de betekenis van argumenten weer.

Syntaxis

We kunnen de syntaxis van een Arrow-functie in drie delen splitsen:

    Parameters:Een functie kan al dan niet parameters hebben.De pijlnotatie/lambda-notatie(=>)Verklaringen:Het vertegenwoordigt de instructieset van de functie.
 (parameter1, parameter2, ..., parameterN) => expression; 

Als we gebruik maken van de dikke pijl (=>) notatie, het is niet nodig om de functie trefwoord. Parameters worden tussen haakjes () doorgegeven en de functie-expressie staat tussen accolades {}.

Er zijn twee manieren om een ​​functie te schrijven in de ES5- en ES6-coderingsstijl.

 // ES5: Without arrow function var getResult = function(username, points) { return username + ' scored ' + points + ' points!'; }; // ES6: With arrow function var getResult = (username: string, points: number): string => { return `${ username } scored ${ points } points!`; } 

Pijlfunctie met parameter

Het volgende programma is een voorbeeld van een pijlfunctie met parameters.

 let sum = (a: number, b: number): number => { return a + b; } console.log(sum(20, 30)); //returns 50 

In het bovenstaande voorbeeld is de som is een pijlfunctie, ' a: nummer, b: nummer ' is een parametertype, ' : nummer ' is het retourtype, de pijlnotatie => scheidt de functieparameter en de functietekst.

Na het compileren van het bovenstaande TypeScript-programma is de bijbehorende JavaScript-code:

 let sum = (a, b) => { return a + b; }; console.log(sum(20, 30)); //returns 50 

Uitgang:

TypeScript-pijlfunctie

Pijlfunctie zonder parameter

Het volgende programma is een voorbeeld van een pijlfunctie zonder parameters.

 let Print = () => console.log('Hello JavaTpoint!'); Print(); 

Uitgang:

TypeScript-pijlfunctie

Als in de pijlfunctie de hoofdtekst van de functie uit slechts één instructie bestaat, zijn de accolades en het return-trefwoord niet nodig. We kunnen het begrijpen uit het onderstaande voorbeeld.

 let sum = (a: number, b: number) => a + b; console.log('SUM: ' +sum(5, 15)); 

Uitgang:

TypeScript-pijlfunctie

Pijlfunctie in een klas

We kunnen de pijlfunctie als eigenschap in een klasse opnemen. Het volgende voorbeeld helpt om het duidelijker te begrijpen.

 class Student { studCode: number; studName: string; constructor(code: number, name: string) { this.studName = name; this.studCode = code; } showDetail = () => console.log('Student Code: ' + this.studCode + '
Student Name: ' + this.studName) } let stud = new Student(101, 'Abhishek Mishra'); stud.showDetail(); 

Uitgang:

TypeScript-pijlfunctie