logo

Funció de fletxa de TypeScript

La versió ES6 de TypeScript proporciona una funció de fletxa que és la taquigrafia sintaxi per definir la funció anònima, és a dir, per a expressions de funció. Omet la paraula clau de funció. La podem anomenar fletxa grossa (perquè -> és una fletxa fina i => és un ' greix 'fletxa). També s'anomena a Funció lambda . La funció de fletxa té un àmbit lèxic de ' això ' paraula clau.

La motivació de la funció de fletxa és:

  • Quan no necessitem seguir escrivint la funció.
  • Capta lèxicament el significat d'aquesta paraula clau.
  • Capta lèxicament el significat dels arguments.

Sintaxi

Podem dividir la sintaxi d'una funció de fletxa en tres parts:

    Paràmetres:Una funció pot tenir o no paràmetres.La notació de fletxa/lambda(=>)Declaracions:Representa el conjunt d'instruccions de la funció.
 (parameter1, parameter2, ..., parameterN) => expression; 

Si fem servir el fletxa grossa (=>) notació, no cal utilitzar el funció paraula clau. Els paràmetres es passen entre claudàtors () i l'expressió de la funció s'inclou dins dels claudàtors {}.

Hi ha dues maneres d'escriure una funció a l'estil de codificació ES5 i ES6.

 // 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!`; } 

Funció de fletxa amb paràmetre

El programa següent és un exemple de funció de fletxa amb paràmetres.

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

En l'exemple anterior, el suma és una funció de fletxa, ' a: nombre, b: nombre ' és un tipus de paràmetre,' : nombre ' és el tipus de retorn, la notació de fletxa => separa el paràmetre de la funció i el cos de la funció.

hashtable versus hashmap

Després de compilar el programa TypeScript anterior, el codi JavaScript corresponent és:

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

Sortida:

Funció de fletxa de TypeScript

Funció de fletxa sense paràmetre

El programa següent és un exemple de funció de fletxa sense paràmetres.

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

Sortida:

llista de matrius ordenada
Funció de fletxa de TypeScript

A la funció de fletxa, si el cos de la funció només consta d'una instrucció, no calen els claudàtors ni la paraula clau de retorn. Ho podem entendre a partir de l'exemple següent.

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

Sortida:

Funció de fletxa de TypeScript

Funció de fletxa en una classe

Podem incloure la funció de fletxa com a propietat en una classe. L'exemple següent ajuda a entendre-ho més clarament.

 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(); 

Sortida:

Funció de fletxa de TypeScript