最近新しいプロジェクトでstructuredCloneを使った。
※それまではプロジェクトに入っていたlodash/cloneDeepを使っていた。
ついでに理解の浅いディープコピーとシャローコピーについて調べてみた。
シャローコピー
そもそもの理解だと、
このコードを実行するとcopyを変更しているのにoriginalが変わっちゃっているというのがシャローコピーだと思っていた。
なのでずっとシャドーコピーのほうがしっくりくる気がするけどって思っていたけど、これはそもそもシャローコピーですらなく「参照共有」あるいは「参照代入」っていう名前らしい。
それじゃ、シャローコピーとは言うと
これのことらしい。
これだけ見ると何が問題なのかわからないけど、シャローコピーとは
…