回答編集履歴

2

コードに1行追記

2019/12/11 10:48

投稿

AkitoshiManabe
AkitoshiManabe

スコア5432

test CHANGED
@@ -66,6 +66,10 @@
66
66
 
67
67
  console.log(oj.hogu, dstOj); // Object{ prop:"any" } Object{ prop:"any" }
68
68
 
69
+ oj.hogu.prop = "any0"; // deep コピー必須と言われる理由はこのあたり?(更に追記
70
+
71
+ console.log(oj.hogu, dstOj); // Object{ prop:"any0" } Object{ prop:"any0" }
72
+
69
73
  dstOj.prop = "any2"; // dstOj 自体は インスタンスの代入
70
74
 
71
75
  console.log(oj.hogu, dstOj); // Object{ prop:"any2" } Object{ prop:"any2" }

1

コード内コメント追記

2019/12/11 10:48

投稿

AkitoshiManabe
AkitoshiManabe

スコア5432

test CHANGED
@@ -62,7 +62,11 @@
62
62
 
63
63
  console.log(oj.hogu, dstOj); // Object{ prop:"any" } Object{ prop:"any" }
64
64
 
65
- oj.prop = "any0";
65
+ oj.prop = "any0"; // プリミティブなので変わらない
66
+
67
+ console.log(oj.hogu, dstOj); // Object{ prop:"any" } Object{ prop:"any" }
68
+
69
+ dstOj.prop = "any2"; // dstOj 自体は インスタンスの代入
66
70
 
67
71
  console.log(oj.hogu, dstOj); // Object{ prop:"any2" } Object{ prop:"any2" }
68
72
 
@@ -82,6 +86,10 @@
82
86
 
83
87
  ```
84
88
 
89
+ ※コードにコメント追記しました。
90
+
91
+
92
+
85
93
  配列要素についても同様です。
86
94
 
87
95
  関数の引数については、ちょっと失念。(同様だったと思います)