2017-02-01 3 views
0

Ich möchte in der Lage sein zu erstellen und das Objekt wie diesesJavascript - Dynamisch verschachtelte JSON erstellen Objekte

{'someKey': 
    [{'someSubKey1': 'value1'}, 
    {'someSubKey2': 'value2'}, 
    {'someSubKey3': 'value3'}] 
} 

ich viel versucht, aber ich glaube, ich bin etwas fehlt

vor allem ich ein erstellt Array und schob die Elemente, dann habe ich ein JSON-Parser und schließlich ein Join (","), aber das Ergebnis war nicht das erwartete.

Einige Hilfe?

+0

Das Format ist ein wenig anders: { 'somekey': { 'someSubKey1': 'value1', 'someSubKey2': 'value2', 'someSubKey3': 'value3'} } – emed

+2

Das ist nicht ein gültiges Objekt ist . Möchten Sie ein Array von Objekten mit jeweils einer einzigen Eigenschaft erstellen? Oder sollten 'someSubKey1',' someSubKey2' usw. alle Teil desselben Objekts sein? Ich empfehle ein Tutorial über Datenstruktur in JS zu lesen: http://eloquentjavascript.net/04_data.html. Was hat JSON damit zu tun? –

+1

'Ich habe viel versucht '. Könnten Sie bitte die Codes schreiben, die Sie versucht haben? – Mojtaba

Antwort

3

Sie müssen den Inhalt in ein Array mit [] einfügen. Wickeln Sie innere json innerhalb eines Arrays wie

var obj = {'someKey': [ 
 
    {'someSubKey1': 'value1'}, 
 
    {'someSubKey2': 'value2'}, 
 
    {'someSubKey3': 'value3'}] 
 
} 
 
console.log(obj);

+0

Ich fühle mich wie ein Idiot, ich vermisse die [] im ursprünglichen Beitrag, ich habe es jetzt bearbeitet – NewJsGuy

2

Wenn Sie benötigen, um Ihre Datenstruktur zugreifen wie myvar.someKey.someSubKey1, sollten Sie diese Struktur:

{ 'someKey': 
    { 
     'someSubKey1': 'value1', 
     'someSubKey2': 'value2', 
     'someSubKey3': 'value3' 
    } 
} 

Wenn Sie möchten, gehen mit myvar.someKey[0].someSubKey1, versuchen Sie dies:

{'someKey': 
    [ 
     {'someSubKey1': 'value1'}, 
     {'someSubKey2': 'value2'}, 
     {'someSubKey3': 'value3'} 
    ] 
} 
Verwandte Themen