シャローコピーについて、コピー元のオブジェクトとコピー先のオブジェクトがメモリ上の同じデータを参照するものと理解しています。
シャローコピーを行うJavaScriptのsliceメソッドやconcatメソッドは元の配列を変更しませんが、同じデータを参照しているにも関わらずコピー後の配列に変更を加えても元の配列が影響を受けないというのがいまいちピンと来ません。
そもそも違うデータの入っている配列が2つ出来てしまうのだから、その時点でメモリ上の違うデータを参照することになってしまうような気がします。
ディープコピーが非破壊的で、シャローコピーが破壊的という組み合わせなら理解できるのですが。。
かなり初歩的な質問ですが、ご教授いただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー