Avatar ·

La manière la plus efficace de cloner un objet en JavaScript

Bonjour à tous ! Je suis débutant en JavaScript et j'ai rencontré un problème lors de la copie d'objets. J'ai besoin de créer une copie indépendante d'un objet, afin que les modifications apportées à la copie n'affectent pas l'original. Voici un exemple de code qui ne fonctionne pas pour moi : ```javascript const original = { name: 'Анна', age: 25, address: { city: 'Москва', street: 'Ленина' }, hobbies: ['чтение', 'спорт'] }; const copy = original; copy.name = 'Мария'; copy.address.city = 'СПб'; console.log(original.name); // 'Мария' — modifié ! console.log(original.address.city); // 'СПб' — également modifié ! ``` J'ai essayé d'utiliser `Object.assign()` et l'opérateur spread : ```javascript const copy2 = Object.assign({}, original); const copy3 = {...original}; copy2.address.city = 'Казань'; console.log(original.address.city); // 'Казань' — encore modifié ! ``` Le problème est que les objets et tableaux imbriqués sont copiés par référence. J'ai entendu parler de `JSON.parse(JSON.stringify())`, mais on dit que cela ne