Avatar ·

ما الفرق بين null و undefined في JavaScript ومتى يتم استخدامهما؟

السلام عليكم! بدأت للتو في تعلم JavaScript ولا أستطيع فهم الفرق بين null و undefined. يبدو أن كلاهما يعني "لا شيء"، ولكن لماذا إذن يوجد قيمتان مختلفتان في اللغة؟ أنظر إلى أمثلة الكود: ```javascript let a; console.log(a); // undefined let b = null; console.log(b); // null ``` في الحالة الأولى، تم تعريف المتغير ولكن لم يتم تهيئته — نحصل على undefined. في الحالة الثانية، أقوم أنا بتعيين null. ولكن ما الفرق الجوهري؟ متى يجب استخدام null ومتى undefined؟ لاحظت أيضًا أنه عند المقارنة باستخدام == فإنهما متساويان، ولكن باستخدام === لا: ```javascript console.log(null == undefined); // true console.log(null === undefined); // false ``` هذا حيرني تمامًا. اشرح لي، من فضلك، كمبتدئ: ما هو ما، وكيف لا أخطئ في الكود؟ شكرًا مقدمًا!

الفرق الرئيسي: undefined — "لا توجد قيمة بعد"، null — "القيمة معدومة عن قصد"

في JavaScript undefined و null هما ق