web-dev-qa-db-ja.com

JavaScriptオブジェクトをJavaScriptオブジェクトに追加

JavaScriptオブジェクトを別のJavaScriptオブジェクト内に入れたいのです。

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

したがって、これらのJavaScriptオブジェクトのそれぞれを「Issues」に保持して、Issues [0] .Name、Issues [2] .IDなどとだけ言うことができるようにします。

外側のIssues JavaScriptオブジェクトを作成しました。

var jsonIssues = {};

JavaScriptオブジェクトを追加する必要がありますが、方法はわかりません。言いたいことがあります:

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

これを行う方法はありますか?ありがとう。

PDATE:回答ごとに、配列を宣言し、必要に応じてJavaScriptオブジェクトをプッシュします。

var jsonArray_Issues = new Array();

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

回答ありがとうございます。

36
MegaMatt
var jsonIssues = []; // new Array
jsonIssues.Push( { ID:1, "Name":"whatever" } );
// "Push" some more here
46
jldupont

最初のオブジェクトはネイティブjavascriptオブジェクト(オブジェクトのリストのように使用される)であるため、Pushは私のシナリオでは機能しませんでしたが、次のように新しいキーを追加して解決しました。

MyObjList['newKey'] = obj;

これに加えて、前に挿入された同じオブジェクトを削除する方法を知るのに役立つかもしれません:

delete MyObjList['newKey'][id];

それが私を助けたので、それが誰かを助けることを願っています。

19
Alex
var jsonIssues = [
 {ID:'1',Name:'Some name',Notes:'NOTES'},
 {ID:'2',Name:'Some name 2',Notes:'NOTES 2'}
];

配列に追加したい場合は、これを行うことができます

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

または、他の人が投稿したプッシュテクニックを使用することもできます。

8
Zoidberg

// object2をobject1に再帰的にマージします

$.extend( true, object1, object2 );

// object2をobject1にマージします

$.extend( object1, object2 );

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

5
Tneciv