2016-04-24 6 views
0

をマージします。私は私のサーバーから5つの結果を得ます。この新しい配列を既存のものに追加したいと思います。は、私は私がアウト開始配列を有するこれらの2つの配列

だから私は私のサーバーからこれを受け取る:私は行くので、それらをマージする

var server_response = [{"key":{"id":6,"kind":"Table","path":["Table",6]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":7,"kind":"Table","path":["Table",7]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":8,"kind":"Table","path":["Table",8]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":9,"kind":"Table","path":["Table",9]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}, 
{"key":{"id":10,"kind":"Table","path":["Table",10]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}]; 

console.log(array1.push(server_response); 

しかし、私は次のような結果を得る:

[{ "キーを":" "{" id ":1、" kind ":"テーブル "、"パス ":["テーブル "、1]}"データ ":{" txt ":" some txt "、" modified ":1461294950 、 "cat1": "a1"、 "permission": "n"}}、{"key":{"id":2、 "kind": "Table"、 "path":["Table"、2]}、 "data":{"txt": "some txt"、 "modified":1461294953、 "cat1": "a1" "テーブル"、 "パス":["テーブル"、3]}、 "データ":{"txt" ":" some " txt"、 "modified":1461294954、 "cat1": "a1"、 "permission": "n"}}、{"key":{"id":4、 "kind": "Table "、" path ":[" Table "、4]}、" data ":{" txt ":" some txt "、" modified ":1461294954、" cat1 ":" a1 "、" permission ":" n "" "}"、 "" {"id":5、 "kind": "テーブル"、 "パス":["Table"、5]} "データ":{"txt": "some"、 " txt" "、"変更 ":1461294954、" cat1 ":" a1 "、"許可 ":" n "}}、[{" key ":{" id ":6、" kind ":" Table "、" path " ":" [Table "、6]}、" data ":{" txt ":" some txt "、" modified ":1461294954、" cat1 ":" a1 "、" permission ":" n "}} {"key":{"id":7、 "kind": "テーブル"、 "パス":["Table"、7]} "data":{"txt": "some txt"、 "modified ":1461294954、" cat1 ":" a1 "、" permission ":" n "}}、{" key ":{" id ":8、" kind ":" Table "、" path ":[" Table "、8]}、" data ":{" txt ":" some txt "、" modified ":1461294954、" cat1 ":" a1 "、" permission ""; "" "}}、{"キー ":{" ID ":9、"種類 ":"テーブル "、"パス ":["テーブル "、9]}"データ ":{" txt " ""; ""; ""; ""; "" "{" id ":10、" kind ":" Table "、" "path":["Table"、10]}、 "data":{"txt": "some txt"、 "modified":1461294955、 "cat1": "a1"、 "permission": "n"} }]]

ご覧のとおり、2番目の配列を実際の配列として最初の配列に追加します。私はちょうどサーバーの応答の内容を追加する(本質的に角括弧がないはずです)。私は正規表現を使用してこれを行うことができますが、これは良い解決策のようには見えません。どのようにこれらの配列をマージできますか?

答えて

6

私はあなたがconcatメソッドを試してみてくださいconcat

var array1 = [{"key":{"id":1,"kind":"Table","path":["Table",1]},"data":{"txt":"some txt","modified":1461294950,"cat1":"a1","permission":"n"}}, 
{"key":{"id":2,"kind":"Table","path":["Table",2]},"data":{"txt":"some txt","modified":1461294953,"cat1":"a1","permission":"n"}}, 
{"key":{"id":3,"kind":"Table","path":["Table",3]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":4,"kind":"Table","path":["Table",4]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":5,"kind":"Table","path":["Table",5]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}]; 
var server_response = [{"key":{"id":6,"kind":"Table","path":["Table",6]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":7,"kind":"Table","path":["Table",7]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":8,"kind":"Table","path":["Table",8]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
{"key":{"id":9,"kind":"Table","path":["Table",9]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}, 
{"key":{"id":10,"kind":"Table","path":["Table",10]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}]; 
console.log(array1.concat(server_response)); 
+0

ありがとう、これは私が探していたものです!これは私がプッシュしたと思ったものですが、そうではないように見えます。 – user2924127

1

この新しい配列を既存のものに追加したいと思います。

新しいアレイを作成しない場合はArray.prototype.push.applyを使用できます。 Array.prototype.push.applyarray1のコンテンツをserver_pushに更新します。

は、以下を参照してください。

var array1 = [{"key":{"id":1,"kind":"Table","path":["Table",1]},"data":{"txt":"some txt","modified":1461294950,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":2,"kind":"Table","path":["Table",2]},"data":{"txt":"some txt","modified":1461294953,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":3,"kind":"Table","path":["Table",3]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":4,"kind":"Table","path":["Table",4]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":5,"kind":"Table","path":["Table",5]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}]; 
 

 
var server_response = [{"key":{"id":6,"kind":"Table","path":["Table",6]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":7,"kind":"Table","path":["Table",7]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":8,"kind":"Table","path":["Table",8]},"data":{"txt":"some txt","modified":1461294954,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":9,"kind":"Table","path":["Table",9]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}, 
 
{"key":{"id":10,"kind":"Table","path":["Table",10]},"data":{"txt":"some txt","modified":1461294955,"cat1":"a1","permission":"n"}}]; 
 

 
Array.prototype.push.apply(array1, server_response); 
 

 
document.body.textContent = JSON.stringify(array1);

2

を探していると信じて...

MergedArray=Array1.concat(Array2,Array3,Array4); 
関連する問題