Website-Suche

Wie definiert man ein Array von Zeichenketten in einem TypeScript-Interface?


Ich habe ein Objekt wie dieses:

{
  "address": ["line1", "line2", "line3"]
}

Wie definiert man address in einem Interface? Die Anzahl der Elemente im Array ist nicht festgelegt.

Antwort #1

interface Addressable {
  address: string[];
}

Antwort #2

Ein Array ist eine spezielle Art von Datentyp, der mehrere Werte verschiedener Datentypen nacheinander mit einer speziellen Syntax speichern kann.

TypeScript unterstützt Arrays, ähnlich wie JavaScript. Es gibt zwei Möglichkeiten, ein Array zu deklarieren:

  1. Verwendung von eckigen Klammern. Diese Methode ist ähnlich wie die Deklaration von Arrays in JavaScript.
let fruits: string[] = ['Apple', 'Orange', 'Banana'];
  1. Verwendung eines generischen Array-Typs, Array.
let fruits: Array<string> = ['Apple', 'Orange', 'Banana'];

Beide Methoden erzeugen dasselbe Ergebnis.

Natürlich können Sie ein Array immer wie unten gezeigt initialisieren, aber Sie werden den Vorteil des Typsystems von TypeScript nicht erhalten.

let arr = [1, 3, 'Apple', 'Orange', 'Banana', true, false];

Quelle

Antwort #3

Es ist so einfach:

address: string[]

Antwort #4

Das ist die Antwort, wegen der ich hierher gekommen bin:

enum Lines {
  "line1",
  "line2",
  "line3",
}

interface Addressable {
   address: keyof typeof Lines;
}

Verwandte Artikel