Hvordan definerer man et array av strenger i et TypeScript-grensesnitt?
Jeg har et objekt som dette:
{
"address": ["line1", "line2", "line3"]
}
Hvordan definere address i et grensesnitt? Antall elementer i arrayen er ikke fast.
Svar #1
interface Addressable {
address: string[];
}
Svar #2
Et array er en spesiell type datatyper som kan lagre flere verdier av forskjellige datatyper sekvensielt ved å bruke en spesiell syntaks.
TypeScript støtter arrays, lik JavaScript. Det finnes to måter å erklære et array på:
- Bruke hakeparenteser. Denne metoden ligner på hvordan du ville deklarert arrays i JavaScript.
let fruits: string[] = ['Apple', 'Orange', 'Banana'];
- Ved å bruke en generisk arraytype, Array.
let fruits: Array<string> = ['Apple', 'Orange', 'Banana'];
Begge metodene gir samme resultat.
Selvfølgelig kan du alltid initialisere et array som vist nedenfor, men du vil ikke få fordelen av TypeScripts typesystem.
let arr = [1, 3, 'Apple', 'Orange', 'Banana', true, false];
Kilde
Svar #3
Det er så enkelt som dette:
address: string[]
Svar #4
Dette er svaret jeg kom hit for:
enum Lines {
"line1",
"line2",
"line3",
}
interface Addressable {
address: keyof typeof Lines;
}
