Med Ty­pe­Script kan brugerne deklarere typer for funk­tio­ner, parametre og re­tur­vær­di­er. Da Ty­pe­Script kon­trol­le­rer, om de korrekte datatyper anvendes, hjælper de­kla­re­ring af typer med at opdage fejl tidligere og øger ko­de­kva­li­te­ten.

Hvad er Ty­pe­Script-funk­tio­ner?

Ty­pe­Script-funk­tio­ner er en central komponent i Ty­pe­Script. Funk­tio­ner i Ty­pe­Script ligner dem i Ja­va­Script, men har den ekstra fordel, at de er statisk typede. Med denne tilgang er datatyper for variabler, parametre og re­tur­vær­di­er allerede defineret ved kom­pi­le­ring og kan ikke ændres under ud­fø­rel­sen. Dette reducerer fejl i pro­duk­tions­mil­jø­et.

En anden egenskab ved Ty­pe­Script-funk­tio­ner er deres flek­si­bi­li­tet. Funk­tio­ner kan have valgfri og stan­dard­vær­di­er for parametre, hvilket gør det nemmere at tilpasse dem til for­skel­li­ge an­ven­del­ses­til­fæl­de. Mulige an­ven­del­ser omfatter da­ta­be­hand­ling, bru­ger­græn­se­fla­de­in­ter­ak­tio­ner, asynkron pro­gram­me­ring og meget mere. Du kan også definere over­be­last­nin­ger for at levere for­skel­li­ge funk­tio­na­li­te­ter baseret på in­put­vær­di­er­ne.

Ud over at deklarere funk­tio­ner kan du også bruge hjæl­pe­funk­tio­ner i Ty­pe­Script. Disse funk­tio­ner er en kortere notation og bruges ofte i moderne Ja­va­Script-ud­vik­lings­prak­sis.

Ty­pe­Script-funk­tio­ner er afgørende for at øge sik­ker­he­den og læs­bar­he­den af kode, der bruges i Ty­pe­Script-projekter. Samtidig gør deres flek­si­bi­li­tet og til­pas­nings­ev­ne dem velegnede til en lang række krav.

Hvad er syntaksen for Ty­pe­Script-funk­tio­ner?

Ty­pe­Script er et supersæt-sprog til Ja­va­Script. Som sådan ligner syntaksen i Ty­pe­Script-funk­tio­ner syntaksen i Ja­va­Script-funk­tio­ner. Funk­tions­ko­den følger i krøllede pa­ren­te­ser { }. Det er her, den egentlige logik i funk­tio­nen im­ple­men­te­res. Her er den grund­læg­gen­de syntaks for en Ty­pe­Script-funktion:

function functionName(parameter1: type, parameter2: type): returnType {
    // Function Code
    return result; // (optional)
}
ty­pe­script
  • funktion: dette nøgleord markerer be­gyn­del­sen på funk­tions­de­kla­ra­tio­nen.
  • fun­ctionNa­me: dette er navnet på funk­tio­nen. Du bør vælge et be­skri­ven­de navn, der afspejler funk­tio­nens opgave.
  • parameter1, parameter2: dette er de parametre, som funk­tio­nen forventer. Hver parameter iden­ti­fi­ce­res ved sit navn og den for­ven­te­de datatype (ty­pe­an­no­ta­tion).
  • re­tur­n­Ty­pe: dette er den datatype, som funk­tio­nen re­tur­ne­rer. Du kan også angive void, hvis funk­tio­nen ikke re­tur­ne­rer en værdi.
  • return result er valgfrit og bruges, hvis funk­tio­nen skal returnere en værdi.

Ty­pe­Script-funk­tio­ner kaldes ved at bruge funk­tions­nav­net ef­ter­fulgt af pa­ren­te­ser. I pa­ren­te­ser­ne angiver du ar­gu­men­ter­ne (in­put­vær­di­er­ne) for funk­tio­nen, hvis den forventer parametre.

functionName(argument1, argument2, ...);
ty­pe­script

Eksempler på Ty­pe­Script-funk­tio­ner

Ty­pe­Script-funk­tio­ner er ekstremt alsidige og kan bruges til at udføre be­reg­nin­ger, ope­ra­tio­ner og komplekse processer i ap­pli­ka­tio­ner.

Anonyme funk­tio­ner

Anonyme funk­tio­ner i Ty­pe­Script er funk­tio­ner, der ikke har et navn og overføres direkte i udtryk eller som ar­gu­men­ter til andre funk­tio­ner. Anonyme funk­tio­ner er nyttige, hvis du kun har brug for en funktion ét sted i koden og ikke ønsker at tildele din egen funk­tions­navn.

var greet = function(name) {
    return "Hello, " + name + "!";
};
var message = greet("John");
console.log(message); // Output: "Hello, John!"
ty­pe­script

I dette eksempel gemmes den anonyme funktion i variablen greet og kaldes senere for at oprette en personlig hilsen til John.

Anonyme funk­tio­ner omfatter også lambda-funk­tio­ner, der er kendt som pil­funk­tio­ner.

const add = (a: number, b: number) => a + b;
const result = add(3, 5); // Output: 8
ty­pe­script

Her tildeles en anonym funktion, der lægger to tal sammen, til variablen add og kaldes derefter.

Stan­dard­pa­ra­me­tre

Stan­dard­pa­ra­me­tre (også kendt som stan­dard­pa­ra­me­tre) i Ty­pe­Script giver dig mulighed for at definere Ty­pe­Script-funk­tio­ner, så de har stan­dard­vær­di­er for parametre. Når funk­tio­nen kaldes, og der ikke overføres nogen værdi som parameter, bruges stan­dard­vær­di­en i stedet.

function greet(name: string = "World") {
    return "Hello, " + name + "!";
}
console.log(greet()); // Output: "Hello, World!"
console.log(greet("John")); // Output: "Hello, John!"
ty­pe­script

Her har funk­tio­nen greet stan­dard­vær­di­en world for pa­ra­me­te­ren name. Hvis der ikke overføres nogen værdi for name, når funk­tio­nen kaldes, vil stan­dard­vær­di­en au­to­ma­tisk blive brugt.

Ra­ste­pa­ra­me­tre

Med re­st­pa­ra­me­tre (også kendt som re­sto­pe­ra­tø­rer eller re­st­pa­ra­me­ter­syn­taks) i Ty­pe­Script kan du samle et uspe­ci­fi­ce­ret antal ar­gu­men­ter som Ty­pe­Script-arrays i en funktion. Dette er nyttigt, hvis du vil skrive funk­tio­ner, der kan behandle va­ri­e­ren­de mængder af ar­gu­men­ter.

function sum(...numbers: number[]): number {
    let total = 0;
    for (const num of numbers) {
        total += num;
    }
    return total;
}
console.log(sum(1, 2, 3, 4, 5)); // Output: 15
ty­pe­script

I eksemplet samler funk­tio­nen sum et vil­kår­ligt antal tal som re­st­pa­ra­me­ter numbers og lægger dem sammen for at beregne den samlede sum. Du kan indtaste så mange tal, du vil, og funk­tio­nen vil lægge dem alle sammen.

Over­be­last­ning

Funk­tions­over­be­last­ning bruges til at definere flere funk­tions­de­kla­ra­tio­ner med samme navne, men for­skel­li­ge parametre eller re­tur­ty­per. Dette hjælper Ty­pe­Script med au­to­ma­tisk at vælge den korrekte funk­tions­de­kla­ra­tion afhængigt af de overførte ar­gu­men­ter og med at udføre ty­pe­kon­trol­ler.

function concatenate(a: string, b: string): string;
function concatenate(a: number, b: number): string;
function concatenate(a: any, b: any): string {
    return a.toString() + b.toString();
}
console.log(concatenate("Hello, ", "World")); // Output: "Hello, World"
console.log(concatenate(3, 5)); // Output: "35"
ty­pe­script

I eksemplet ovenfor har vi to funk­tions­over­be­last­nin­ger for concatenate. Den første ac­cep­te­rer to strenge, og den anden ac­cep­te­rer to tal. Funk­tio­nen selv kon­ver­te­rer de overførte ar­gu­men­ter til strenge og sam­men­kæ­der dem. Ty­pe­Script vælger au­to­ma­tisk den passende over­be­last­ning baseret på de overførte ar­gu­men­ter og udfører de nød­ven­di­ge ty­pe­kon­trol­ler.

Funk­tions­over­be­last­nin­ger er særligt nyttige, hvis du udvikler et API eller et bibliotek, hvor du vil sikre, at brugen af funk­tio­nen er enkel og fejlfri, uanset de for­skel­li­ge typer parametre, som brugerne angiver. 133e3bd4651a9100beeedd44acb6f1b4

2ac5d8264db21a660154b3ffdb4208dc

Gå til ho­ved­me­nu­en