2017-11-24 1 views
-1

ich eine Liste von Objekten zu transformieren will Transformation mit dem Objektjson Objekts in ein Array-Feld

{ 
    "idActivite": 1, 
    "nomActivite": "Accueil des participants autour d’un café viennoiseries", 
    "descriptionActivite": "", 
    "lieuActivite": "", 
    "typeActivite": "", 
    "horaireDebActivite": 1512028800, 
    "horaireFinActivite": 1512059388, 
    "horaireDebSession": 1512030600, 
    "horaireFinSession": 1512318588, 
    "nomSession": "", 
    "isInSession": false 
} 

zu einem ein wie dies mit dieser Form:

[ 
    "idActivite": 1, 
    "nomActivite": "Accueil des participants autour d’un café viennoiseries", 
    "descriptionActivite": "", 
    "lieuActivite": "", 
    "typeActivite": "", 
    "horaireDebActivite": 1512028800, 
    "horaireFinActivite": 1512059388, 
    "horaireDebSession": 1512030600, 
    "horaireFinSession": 1512318588, 
    "nomSession": "", 
    "isInSession": false 
] 

mit Typ-Skript 2.5

+3

Das "Ergebnis" ist ein Syntaxfehler – Andreas

+3

Ein Array kann nur numerische "Schlüssel" haben. Was ist Ihre eigentliche Frage - Sie haben eine Typoskript-Datei, die ein Array für ein Argument benötigt und stattdessen ein Objekt übergibt? Vielleicht soll Ihre Funktion eine Liste von Objekten enthalten. – Adam

Antwort

1

Beide sind theoretisch noch Objekte und das ist nicht der richtige Weg! Ein Array ist einfach eine Liste von Elementen mit einem Zahlenindex, das von Ihnen angegebene Beispiel verwendet eine Zeichenfolge zum Indexieren und ist daher immer noch gemäß der JSON-Spezifikation ein Objekt. Wenn das Problem ist, dass Sie mit zu durchlaufen sie diese verwenden:

for(var key in array){ 
    console.log(array[key]); 
} 
0

Angenommen, Sie ein Array wollen wie [{Schlüssel, Wert}]

let x = { a: 1, b: 2 } 
let y = [] 

// Note the 'in' keyword instead of 'of' 
for (const key in x) { 
    y.push({ key: key, value: x[key] }) 
} 

// Will print [ { key: 'a', value: 1 }, { key: 'b', value: 2 } ] 
console.log(y) 

Beachten Sie, dass diese Lösung linear mit der Größe skaliert des Arrays.

Verwandte Themen