بعضی برنامهنویسها فکر میکنند:
const config = Object.freeze({ api: 'example.com' }); یعنی آبجکت کاملاً محافظت شده است.
اما:
const config = Object.freeze({ user: { role: 'admin' } }); config.user.role = 'guest';😐 این کد هنوز کار میکند!
چون ()Object.freeze فقط سطح اول را قفل میکند.
برای ساخت Immutable واقعی باید Deep Freeze انجام دهی.
💡 دانستن این نکته در پروژههای بزرگ از باگهای عجیب جلوگیری میکند.
#JavaScript #Frontend
@CodeVerse_dev