wrongwrongな開発日記

しんまいさんの忘備録

【JavaScript】オブジェクトをディープコピーする

JavaScriptには素の状態でディープコピーを取得する機能が無く、ただ代入してもシャローコピーとなってしまい、バックアップを一時的に持っておくような作業には使えません。

やり方

自分で書こうとすると手間が大きかったので、Lodashを導入した上で、そこからclone関数を使うのが一番手軽だと思います。
flaviocopes.com

生JSで実装された内容

以下はtatsuo fukuchi様が実装した例です。
qiita.com

おまけ的な

オブジェクト同士の完全比較のisEqualsなど、Lodashには非常に有用な関数が揃っています。
導入も簡単ですし、とりあえず詰まったらLodashから探してくるのが今の所簡単そうかな……。