logo

Funkce TypeScript Arrow

ES6 verze TypeScript poskytuje funkci šipky, která je těsnopis syntaxe pro definování anonymní funkce, tj. pro funkční výrazy. Vynechává klíčové slovo function. Můžeme tomu říkat tlustá šipka (protože -> je tenká šipka a => je ' Tlustý ' Šíp). Nazývá se také a Funkce lambda . Funkce šipky má lexikální rozsah ' tento klíčové slovo.

Motivace pro funkci šipky je:

  • Když nepotřebujeme neustále psát.
  • Lexicky zachycuje význam tohoto klíčového slova.
  • Lexicky zachycuje význam argumentů.

Syntax

Syntaxi funkce Arrow můžeme rozdělit na tři části:

    Parametry:Funkce může nebo nemusí mít parametry.Zápis šipky/zápis lambda(=>)prohlášení:Představuje instrukční sadu funkce.
 (parameter1, parameter2, ..., parameterN) => expression; 

Pokud použijeme tlustá šipka (=>) notace, není třeba používat funkce klíčové slovo. Parametry se předávají v hranatých závorkách () a výraz funkce je uzavřen ve složených závorkách {}.

Existují dva způsoby zápisu funkce ve stylu kódování ES5 a 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!`; } 

Funkce šipky s parametrem

Následující program je příkladem funkce šipky s parametry.

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

Ve výše uvedeném příkladu je součet je funkce šipky, a: číslo, b: číslo ' je typ parametru, ' : číslo ' je návratový typ, označení šipky => odděluje parametr funkce a tělo funkce.

Po zkompilování výše uvedeného programu TypeScript je odpovídající kód JavaScript:

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

Výstup:

Funkce TypeScript Arrow

Funkce šipky bez parametru

Následující program je příkladem funkce šipky bez parametrů.

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

Výstup:

Funkce TypeScript Arrow

Pokud se ve funkci šipky skládá tělo funkce pouze z jednoho příkazu, nejsou potřeba složené závorky a klíčové slovo return. Můžeme to pochopit z níže uvedeného příkladu.

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

Výstup:

Funkce TypeScript Arrow

Funkce šipky ve třídě

Funkci šipky můžeme zahrnout jako vlastnost do třídy. Následující příklad pomůže tomu jasněji porozumět.

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

Výstup:

Funkce TypeScript Arrow