質問編集履歴

1

説明が解りづらかったため修正。

2020/02/08 04:19

投稿

HARIBOYA
HARIBOYA

スコア19

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
 
4
4
 
5
+ 下記は変数a,bをマージするサンプルです。
6
+
5
- 下記ような結果を返す「merge」関数を作成したいのですがどの様にすればいいでしょうか?
7
+ サンプルの「merge」関数部分をどの様に作成すればのか解らな状態す。
6
8
 
7
9
 
8
10
 
@@ -18,11 +20,25 @@
18
20
 
19
21
 
20
22
 
23
+ //Object.assignだとH1キーで上書きされてしまいます。
24
+
25
+ Object.assign(a,b); // {"H1":{"H3":{"h5":"VALUE5"}}};
26
+
27
+
28
+
29
+ //始めのキーで上書きされるのではなく1つ以上の配列を再帰的にマージしたいです。
30
+
31
+ //phpの関数で言うとarray_merge_recursive
32
+
33
+ //https://www.php.net/manual/ja/function.array-merge-recursive.php
34
+
35
+ //になります。
36
+
21
- var res = merge(a,b); //{"H1":{"H2":10, "H3":{"H4":"VALUE4","h5":"VALUE5"}}};
37
+ merge(a, b); //{"H1":{"H2":10, "H3":{"H4":"VALUE4","h5":"VALUE5"}}};
22
38
 
23
39
 
24
40
 
25
- console.log(res);//{"H1":{"H2":10, "H3":{"H4":"VALUE4","h5":"VALUE5"}}};
41
+
26
42
 
27
43
 
28
44