Ich möchte JavaScript-Objekte in einem anderen JavaScript-Objekt als solches haben:
Issues:
- {"ID" : "1", "Name" : "Missing Documentation", "Notes" : "Issue1 Notes"}
- {"ID" : "2", "Name" : "Software Bug", "Notes" : "Issue2 Notes, blah, blah"}
- {"ID" : "2", "Name" : "System Not Ready", "Notes" : "Issue3 Notes, etc"}
// etc...
Ich möchte also, dass "Issues" jedes dieser JavaScript-Objekte enthält, damit ich nur Issues [0] .Name oder Issues [2] .ID usw. sagen kann.
Ich habe das äußere Issues-JavaScript-Objekt erstellt:
var jsonIssues = {};
Ich bin an dem Punkt angelangt, an dem ich ein JavaScript-Objekt hinzufügen muss, weiß aber nicht, wie. Ich möchte sagen können:
Issues<code here>.Name = "Missing Documentation";
Issues<code here>.ID = "1";
Issues<code here>.Notes = "Notes, notes notes";
Gibt es eine Möglichkeit, dies zu tun? Vielen Dank.
PDATE: Pro Antwort wurde ein Array deklariert und bei Bedarf werden JavaScript-Objekte aufgeschoben:
var jsonArray_Issues = new Array();
jsonArray_Issues.Push( { "ID" : id, "Name" : name, "Notes" : notes } );
Danke für die Antworten.
var jsonIssues = []; // new Array
jsonIssues.Push( { ID:1, "Name":"whatever" } );
// "Push" some more here
Da mein erstes Objekt ein natives Javascript-Objekt ist (das wie eine Liste von Objekten verwendet wird), hat Push
in meinem Szenario nicht funktioniert, aber ich habe es gelöst, indem ich den folgenden neuen Schlüssel hinzugefügt habe:
MyObjList['newKey'] = obj;
Darüber hinaus kann es nützlich sein zu wissen, wie dasselbe Objekt gelöscht wird, das zuvor eingefügt wurde:
delete MyObjList['newKey'][id];
Hoffe, es hilft jemandem, wie es mir geholfen hat;
var jsonIssues = [
{ID:'1',Name:'Some name',Notes:'NOTES'},
{ID:'2',Name:'Some name 2',Notes:'NOTES 2'}
];
Wenn Sie dem Array hinzufügen möchten, können Sie dies tun
jsonIssues[jsonIssues.length] = {ID:'3',Name:'Some name 3',Notes:'NOTES 3'};
Oder Sie können die Push-Technik verwenden, die der andere Typ gepostet hat, was auch gut ist.
// Objekt2 rekursiv in Objekt1 zusammenführen
$.extend( true, object1, object2 );
// Füge Objekt2 in Objekt1 zusammen
$.extend( object1, object2 );