Ajouter un objet JavaScript à un objet JavaScript

j'aimerais avoir des objets JavaScript dans un autre objet JavaScript en tant que tel:

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...

donc, j'aimerais que" Issues " retienne chacun de ces objets JavaScript, pour que je puisse juste dire Issues[0].Name, or Issues[2].ID, etc.

j'ai créé L'objet JavaScript exterior Issues:

var jsonIssues = {};

j'en suis au point où j'ai besoin d'ajouter un objet JavaScript, mais ne savent pas comment. J'aimerais être capable de dire:

Issues<code here>.Name = "Missing Documentation";
Issues<code here>.ID = "1";
Issues<code here>.Notes = "Notes, notes notes";

y a-t-il un moyen de faire cette? Grâce.

mise à jour: Par les réponses données, a déclaré un tableau, et je suis de pousser des objets JavaScript sur:

var jsonArray_Issues = new Array();

jsonArray_Issues.push( { "ID" : id, "Name" : name, "Notes" : notes } );

Merci pour les réponses.

32
demandé sur Crescent Fresh 2009-11-17 20:01:09

4 réponses

var jsonIssues = []; // new Array
jsonIssues.push( { ID:1, "Name":"whatever" } );
// "push" some more here
43
répondu jldupont 2012-09-04 17:06:36

Comme mon premier objet est un natif javascript object (utilisée comme une liste d'objets), push n'a pas fonctionné dans mon escenario, mais je l'ai résolu en ajoutant une nouvelle touche comme suit:

MyObjList['newKey'] = obj;

En plus de cela, peut être utile pour savoir comment supprimer un même objet inséré, avant l':

delete MyObjList['key'][id];

j'Espère que ça aide quelqu'un comme ça qui m'ont aidé;

9
répondu AXL 2017-07-06 09:16:18
var jsonIssues = [
 {ID:'1',Name:'Some name',Notes:'NOTES'},
 {ID:'2',Name:'Some name 2',Notes:'NOTES 2'}
];

Si vous voulez ajouter à l'éventail, alors vous pouvez le faire

jsonIssues[jsonIssues.length] = {ID:'3',Name:'Some name 3',Notes:'NOTES 3'};

Ou vous pouvez utiliser la technique de poussée que l'autre gars a posté, ce qui est également bon.

8
répondu Zoidberg 2009-11-17 17:20:29

/ / fusionner object2 en object1, récursivement

$.extend( true, object1, object2 );

// fusionner l'object2 dans l'object1

$.extend( object1, object2 );

https://api.jquery.com/jquery.extend/

4
répondu Tneciv 2015-12-12 01:46:24