JavaScriptでの深いコピーの方法


以下に、いくつかの深いコピーの方法をコード例とともに紹介します。

  1. スプレッド構文を使用する方法:

    const originalArray = [1, 2, 3];
    const copiedArray = [...originalArray];
  2. Object.assign()メソッドを使用する方法:

    const originalObject = { name: 'John', age: 30 };
    const copiedObject = Object.assign({}, originalObject);
  3. JSON.stringify()とJSON.parse()を使用する方法:

    const originalArray = [1, 2, 3];
    const copiedArray = JSON.parse(JSON.stringify(originalArray));
  4. ライブラリを使用する方法(例:lodashのcloneDeep()メソッド):

    const originalObject = { name: 'John', age: 30 };
    const copiedObject = _.cloneDeep(originalObject);

これらの方法を使用することで、オブジェクトや配列を安全に深いコピーすることができます。ただし、注意点としては、コピー元のオブジェクトや配列が非常に大きい場合や、循環参照が含まれている場合にはパフォーマンスの問題や無限ループの可能性があるため、注意が必要です。

以上がJavaScriptでの深いコピーの方法についての解説です。