0

次のようなものをマージしようとします(jsonで表示します)

[["Field1","0"],["Field2","0"],["Field3","0"]]

{"0":{"Name":"Foo","Lastname":"Bar"}} 

私がする時

$.extend({}, firstArray, secondArray);

私はJSONで取得します

{
 "0":{"Name":"Foo","Lastname":"Bar"},
 "1":["Field1","0"],
 "2":["Field2","0"]
} 

ご覧のとおり、最初の配列は 2 番目の配列と混合されています。こんな風にまとめてほしい

{
"0":{"Name":"Foo","Lastname":"Bar"},
"1":[ "1": ["Field1","0"],"2":["Field2","0"]]
} 

後でそれを消費すると、フィールドのものを1つの配列として取得できます。可能ですか?私はそれを働かせることができません。何か案は?

4

2 に答える 2

1

secondArrayのプロパティとして追加するだけでよいようですfirstArrayが、オブジェクトに変換されます。これは次のように実現できます。

firstArray["1"] = $.extend({}, {}, secondArray);

今は次のfirstArrayようになります:

{
"0":{"Name":"Foo","Lastname":"Bar"},
"1":{"0": ["Field1","0"], "1":["Field2","0"]}
} 

それで十分だと思います。

于 2013-01-11T23:03:15.927 に答える
0

firstarray = firstarray.concat(secondarray)

于 2013-01-11T23:02:05.247 に答える