Die Typisierung Service[] ergibt für mich keinen Sinn

RezaScript

Bekanntes Mitglied
Hi

So sieht mein Skript in Angular (TypeScript) aus:

Javascript:
export interface Service {
  service: string,
  description: string,
  hourly_rate: number,
  hours: number,
  price: number
}

const TABLE_VALUES: Service[] = [
  { service: 'Service 1', description: 'Lorem Ipsum...', hourly_rate: 60, hours: 5, price: 300 }
]

Also, den Typ von TABLE_VALUES definiere ich mit Service[]. Das funktioniert so aber ich verstehe nicht warum. Das Objekt befindet sich IN einer Array. Nach meiner Logik müsste es so aussehen: Array<Service>

Kann mich jemand bitte aufklären?
 

Marinek

Bekanntes Mitglied
Das ist Angular mit Typescript. Da sind beide Schreibweisen möglich.

Wenn man vor dem posten ein paar Minuten nachdenkt, dann muss man nicht ständig alle verwirren und dann seine postings editieren.
 

RezaScript

Bekanntes Mitglied
Ok danke. Gut zu wissen, dass es mit beiden möglich ist. Aber jetzt angenommen, mein Code sieht so aus:

Javascript:
export interface Service {
  service: string,
  description: string,
  hourly_rate: number,
  hours: number,
  price: number
}

const TABLE_VALUES = [
  { service: 'Service 1', description: 'Lorem Ipsum...', hourly_rate: 60, hours: 5, price: 300 }
  { "I am a string", 99, true }   
]

Mit Service[] kann ich ja dann nichts mehr anfangen. Wie würde die Typisierung dann aussehen? Etwa so?
Code:
Array<Service, <string, number, boolean>>
Oder gibt es dafür auch eine Alternativlösung (abgesehen von any)?

@KonradN kein Problem. Du hast wahrscheinlich JavaScript mit Java verwechselt. Ich wollte als Highlighting auch TypeScript wählen, kann man in diesem Forum aber nicht. Deshalb habe ich einfach JS genommen :)
 

httpdigest

Top Contributor
Du kannst auch ein anonymes struct {} als Typ nutzen:
Javascript:
var variable : {
  service: string,
  description: string,
  hourly_rate: number,
  hours: number,
  price: number
}[] = {...};
Aber wie thecain schon sagte: Warum solltest du das wollen?
 

Ähnliche Java Themen


Oben