La version ES6 de TypeScript fournit une fonction de flèche qui est la sténographie syntaxe pour définir la fonction anonyme, c'est-à-dire pour les expressions de fonction. Il omet le mot-clé function. Nous pouvons l'appeler grosse flèche (car -> est une flèche fine et => est un ' graisse ' flèche). On l'appelle aussi un Fonction Lambda . La fonction flèche a une portée lexicale de ' ce ' mot-clé.
La motivation pour la fonction flèche est :
- Quand nous n'avons pas besoin de continuer à taper, la fonction.
- Il capture lexicalement la signification de ce mot-clé.
- Il capture lexicalement le sens des arguments.
Syntaxe
Nous pouvons diviser la syntaxe d'une fonction Arrow en trois parties :
méthode tostring java
(parameter1, parameter2, ..., parameterN) => expression;
Si nous utilisons le grosse flèche (=>) notation, il n'est pas nécessaire d'utiliser la fonction mot-clé. Les paramètres sont passés entre parenthèses () et l'expression de la fonction est placée entre les accolades {}.
Il existe deux façons d’écrire une fonction dans les styles de codage ES5 et 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!`; }
Fonction flèche avec paramètre
Le programme suivant est un exemple de fonction flèche avec paramètres.
let sum = (a: number, b: number): number => { return a + b; } console.log(sum(20, 30)); //returns 50
Dans l'exemple ci-dessus, le somme est une fonction fléchée, ' a : nombre, b : nombre ' est un type de paramètre, ' : nombre ' est le type de retour, la notation fléchée => sépare le paramètre de fonction et le corps de la fonction.
Après avoir compilé le programme TypeScript ci-dessus, le code JavaScript correspondant est :
let sum = (a, b) => { return a + b; }; console.log(sum(20, 30)); //returns 50
Sortir:
Fonction flèche sans paramètre
Le programme suivant est un exemple de fonction flèche sans paramètres.
let Print = () => console.log('Hello JavaTpoint!'); Print();
Sortir:
Dans la fonction flèche, si le corps de la fonction se compose d’une seule instruction, les accolades et le mot-clé return ne sont pas nécessaires. Nous pouvons le comprendre à partir de l’exemple ci-dessous.
scanner java
let sum = (a: number, b: number) => a + b; console.log('SUM: ' +sum(5, 15));
Sortir:
Fonction flèche dans une classe
Nous pouvons inclure la fonction flèche comme propriété dans une classe. L’exemple suivant permet de le comprendre plus clairement.
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();
Sortir: