angular - TypeScript Returtype: void


I TypeScript (brukes i et Angular-prosjekt), for en metode som ikke returnerer noe (void), hvilken av følgende er best praksis?

onSelect(someNumber: number): void {

}

ELLER

onSelect(someNumber: number) {

}

Jeg har sett det på begge måter i forskjellige eksempler og var ikke sikker på om det er bedre å legge til returtypen som void eller å la det stå tomt?

Svar #1

Det er helt et spørsmål om personlig preferanse om du eksplisitt angir en metodes returtype eller ikke, spesielt for en trivial type som void.

Årsaker til at du kanskje legger til : void:

  • Forbedrer klarhet - andre utviklere trenger ikke å lese metodeliket for å se om den returnerer noe
  • Sikrere - hvis du for eksempel flytter kode fra en annen funksjon inn i denne som har en return expr;-setning i seg, vil TypeScript merke denne feilen

Grunner til at du kanskje ikke:

  • Kortfattethet - hvis det er klart fra konteksten hva returtypen skal være (f.eks. getLength() nesten helt sikkert returnerer number), så er en returtypeannotasjon litt støyende
  • Fleksibilitet - hvis du lager en prototype av denne koden og ennå ikke er sikker på hva du vil at returtypen skal være, lar det å la den være inferert deg endre den enklere

Svar #2

Husk regelen: "void er returtypen til en funksjon/metode som ikke eksplisitt returnerer noe"

Enten du bruker «void» eller ikke som returtype i funksjon/metode, blir det automatisk antatt å være «void» returtype hvis det ikke er spesifisert en eksplisitt returtype

Relaterte artikler