logo

TypeScript pilfunksjon

ES6-versjonen av TypeScript gir en pilfunksjon som er stenografi syntaks for å definere den anonyme funksjonen, dvs. for funksjonsuttrykk. Den utelater funksjonsnøkkelordet. Vi kan kalle det fet pil (fordi -> er en tynn pil og => er en ' fett ' pil). Det kalles også en Lambda funksjon . Pilfunksjonen har leksikalsk omfang av ' dette ' nøkkelord.

Motivasjonen for pilfunksjonen er:

  • Når vi ikke trenger å fortsette å skrive funksjon.
  • Det fanger leksikalsk betydningen av dette søkeordet.
  • Den fanger leksikalsk betydningen av argumenter.

Syntaks

Vi kan dele syntaksen til en pilfunksjon i tre deler:

    Parametere:En funksjon kan ha parametere eller ikke.Pilnotasjonen/lambdanotasjonen(=>)Utsagn:Den representerer funksjonens instruksjonssett.
 (parameter1, parameter2, ..., parameterN) => expression; 

Hvis vi bruker fettpil (=>) notasjon, er det ikke nødvendig å bruke funksjon søkeord. Parametere sendes i parentes (), og funksjonsuttrykket er omsluttet av de krøllede parentesene {}.

Det er to måter å skrive en funksjon på i ES5- og ES6-kodingsstil.

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

Pilfunksjon med parameter

Følgende program er et eksempel på pilfunksjon med parametere.

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

I eksemplet ovenfor er sum er en pilfunksjon, ' a: tall, b: tall ' er en parametertype, ' : Antall ' er returtypen, pilnotasjonen => skiller funksjonsparameteren og funksjonskroppen.

Etter kompilering av TypeScript-programmet ovenfor, er den tilsvarende JavaScript-koden:

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

Produksjon:

TypeScript pilfunksjon

Pilfunksjon uten parameter

Følgende program er et eksempel på pilfunksjon uten parametere.

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

Produksjon:

'eulers nummer i java'
TypeScript pilfunksjon

I pilfunksjonen, hvis funksjonskroppen består av bare ett utsagn, er det ikke behov for de krøllede parentesene og nøkkelordet retur. Vi kan forstå det fra eksemplet nedenfor.

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

Produksjon:

TypeScript pilfunksjon

Pilfunksjon i en klasse

Vi kan inkludere pilfunksjonen som en egenskap i en klasse. Følgende eksempel hjelper deg å forstå det klarere.

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

Produksjon:

TypeScript pilfunksjon