logo

Funzione freccia TypeScript

La versione ES6 di TypeScript fornisce una funzione freccia che è il file abbreviazione sintassi per definire la funzione anonima, ovvero per le espressioni di funzione. Omette la parola chiave della funzione. Possiamo chiamarla freccia grossa (perché -> è una freccia sottile e => è un ' grasso ' freccia). È anche chiamato a Funzione lambda . La funzione freccia ha un ambito lessicale di ' Questo ' parola chiave.

La motivazione per la funzione freccia è:

  • Quando non abbiamo bisogno di continuare a digitare la funzione.
  • Cattura lessicalmente il significato di questa parola chiave.
  • Cattura lessicalmente il significato degli argomenti.

Sintassi

Possiamo dividere la sintassi di una funzione Freccia in tre parti:

    parametri:Una funzione può avere o meno parametri.La notazione freccia/notazione lambda(=>)Dichiarazioni:Rappresenta il set di istruzioni della funzione.
 (parameter1, parameter2, ..., parameterN) => expression; 

Se usiamo il freccia grassa (=>) notazione, non è necessario utilizzare la notazione funzione parola chiave. I parametri vengono passati tra parentesi () e l'espressione della funzione è racchiusa tra parentesi graffe {}.

Esistono due modi per scrivere una funzione nello stile di codifica ES5 ed 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!`; } 

Funzione freccia con parametro

Il seguente programma è un esempio di funzione freccia con parametri.

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

Nell'esempio sopra, il somma è una funzione freccia, ' a: numero, b: numero ' è un tipo di parametro, ' : numero ' è il tipo restituito, la notazione freccia => separa il parametro della funzione e il corpo della funzione.

Dopo aver compilato il programma TypeScript sopra, il codice JavaScript corrispondente è:

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

Produzione:

Funzione freccia TypeScript

Funzione freccia senza parametro

Il seguente programma è un esempio di funzione freccia senza parametri.

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

Produzione:

Funzione freccia TypeScript

Nella funzione freccia, se il corpo della funzione è costituito da una sola istruzione, non sono necessarie le parentesi graffe e la parola chiave return. Possiamo capirlo dall'esempio seguente.

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

Produzione:

Funzione freccia TypeScript

Funzione freccia in una classe

Possiamo includere la funzione freccia come proprietà in una classe. L’esempio seguente aiuta a capirlo più chiaramente.

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

Produzione:

Funzione freccia TypeScript