Avatar ·

كيف تتحقق بشكل صحيح من أن خاصية كائن في JavaScript هي undefined؟

مرحبًا بالجميع! أنا مبتدئ في JavaScript وقد واجهت مشكلة عند التحقق من خصائص الكائنات. لدي كائن user: ```javascript const user = { name: 'إيفان', age: 25 }; ``` أريد التحقق مما إذا كانت الخاصية `email` موجودة في الكائن وما إذا كانت تساوي `undefined`. لكنني مرتبك بين الطرق المختلفة للتحقق. على سبيل المثال، إذا كتبت: ```javascript if (user.email === undefined) { console.log('email غير معرف'); } ``` هذا يعمل، لكنني سمعت أن القيام بذلك غير آمن، لأن الخاصية قد تكون مضبوطة بشكل صريح على `undefined`. ثم جربت العامل `in`: ```javascript if ('email' in user) { console.log('الخاصية موجودة'); } ``` لكنني هنا لا أفهم الفرق بين «الخاصية غير موجودة» و«الخاصية موجودة ولكنها تساوي undefined». في مهمتي، أحتاج إلى التمييز بين هاتين الحالتين. كما رأيت أن البعض يستخدم `typeof`: ```javascript if (typeof user.email === 'undefined') { // نفعل شيئًا } ``` أي طريقة هي الأ