Theme
Primary Color

الفرق بين تعديل البيانات وإنشاء نسخة جديدة

تعديل كائن مشترك ممكن يغير نتيجة جزء تاني من البرنامج من غير ما يكون واضح

شغل المثال بإستخدام Node.js لتوضيح الفكرة ويمكن تطبيق نفس المبدأ في لغات تانية

المثال العملي

const original = { name: 'Notebook', price: 50 };
const changed = { ...original, price: 60 };
console.log(original.price);
console.log(changed.price);

النتيجة

50
60

الكائن الجديد حافظ على السعر الأصلي لكن النسخ هنا سطحي والكائنات المتداخلة تظل مشتركة

جرب بنفسك

أضف كائن details متداخل وجرب تعديله لفهم الفرق بين النسخ السطحي والنسخ العميق

programming شرح