Reactでイミュータブルを意識して実装をするにはImmerというライブラリを使うと良いということで色々調べてみると、オブジェクトのコピーに関して曖昧な理解をしていたことを実感しました。 そこで今回は、JavaScriptのシャローコピーとディープコピーに ...
「スプレッド構文はシャローコピーだよ〜」と言われたことがありますが、正直シャローコピーが何なのか分からなかったので、簡単にまとめてみたいと思いました。 1. Javascriptのデータタイプ コピーの話をする前に、まずはJavascriptにおいてデータの話を ...
Object.assignは、ディープコピーではなく、シャローコピーのため下階層のオブジェクトはコピーされない。 解決方法 汎用的な対応は自前で実装するのはコストが高いのでライブラリを使用する(自前の実装で解決できるレベルのネストであれば、ループなど ...