logo

Функция TypeScript Arrow

ES6 версията на TypeScript предоставя функция със стрелка, която е стенография синтаксис за дефиниране на анонимната функция, т.е. за функционални изрази. Пропуска функционалната ключова дума. Можем да я наречем дебела стрелка (защото -> е тънка стрелка и => е ' дебел ' стрелка). Нарича се още а Ламбда функция . Функцията стрелка има лексикален обхват на ' това ' ключова дума.

Мотивацията за функцията стрелка е:

  • Когато не е необходимо да продължим да пишем функция.
  • Той лексикално улавя значението на тази ключова дума.
  • Той лексикално улавя значението на аргументите.

Синтаксис

Можем да разделим синтаксиса на функция Arrow на три части:

    Параметри:Една функция може да има или да няма параметри.Стрелка/ламбда нотация(=>)Изявления:Той представлява набор от инструкции на функцията.
 (parameter1, parameter2, ..., parameterN) => expression; 

Ако използваме дебела стрелка (=>) нотация, няма нужда да използвате функция ключова дума. Параметрите се предават в скобите (), а изразът на функцията е ограден във фигурните скоби {}.

Има два начина за писане на функция в стила на кодиране ES5 и 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!`; } 

Функция стрелка с параметър

Следващата програма е пример за функция стрелка с параметри.

печат на масив в java
 let sum = (a: number, b: number): number => { return a + b; } console.log(sum(20, 30)); //returns 50 

В горния пример, сума е функция със стрелка, ' a: число, b: число ' е тип параметър, ' : номер ' е типът на връщане, нотацията със стрелка => разделя параметъра на функцията и тялото на функцията.

След компилиране на горната TypeScript програма, съответният JavaScript код е:

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

Изход:

Функция TypeScript Arrow

Функция стрелка без параметър

Следващата програма е пример за функция със стрелка без параметри.

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

Изход:

Функция TypeScript Arrow

Във функцията стрелка, ако тялото на функцията се състои само от един оператор, тогава няма нужда от фигурни скоби и ключова дума return. Можем да го разберем от примера по-долу.

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

Изход:

Функция TypeScript Arrow

Функция стрелка в клас

Можем да включим функцията стрелка като свойство в клас. Следният пример помага да се разбере по-ясно.

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

Изход:

Функция TypeScript Arrow