Avatar ·

ما هو null/nil في JavaScript وكيفية التعامل معه؟

مرحبًا بالجميع! بدأت تعلم JavaScript (Node.js) وواجهت ارتباكًا في المصطلحات null و nil. في لغات أخرى، مثل Ruby أو Go، nil هي القيمة القياسية لـ «لا شيء». أما في JS فأرى فقط null و undefined. لكنني سمعت أن البعض يستخدمون nil في كود Node.js. هل يمكنكم توضيح ما إذا كان nil موجودًا في JavaScript كنوع منفصل؟ أم أنه مجرد اسم مستعار لـ null؟

حاولت كتابة سكريبت بسيط للتحقق:

let a = null;
let b = undefined;
console.log(a === b); // false
console.log(typeof a); // object
console.log(typeof b); // undefined

// محاولة استخدام nil
let c = nil; // ReferenceError: nil is not defined

توقعت أن يعمل nil، لكنني حصلت على خطأ. السؤال: كيف نتعامل بشكل صحيح مع غياب القيمة في JavaScript؟ في أي الحالات نستخدم null، وفي أي الحالات نستخدم u