ما الفرق بين null و undefined في JavaScript؟


لنتحدث عن أوجه التشابه أولاً.

nullوundefinedهي أنواع بدائية لجافا سكريبت.

معنىundefinedهو القول إن متغيرًا قد أعلن ، لكن ليس له قيمة معينة.

let age //age is undefined
let age = null //age is null

ملاحظة: الوصول إلى متغير لم يتم التصريح عنه سيؤدي إلى رفع ملفReferenceError: <variable> is not definedخطأ ، ولكن هذا لا يعني أنهundefined.

كيف تتحقق مما إذا كان المتغير فارغًا؟ استخدم عامل المقارنة ، على سبيل المثالage === null

نفس الشيء لغير محدد:age === undefined

في كلتا الحالتين ، يمكنك التحقق مما يلي:

if (!age) {

}

وسيكون هذا مطابقًا لكليهماnullوundefined.

يمكنك أيضًا استخدام ملفtypeofالمشغل أو العامل:

let age
typeof age //'undefined'

برغم منnullيتم تقييمه ككائن ، على الرغم من أنه نوع بدائي:

let age = null
typeof age //'object'

المزيد من دروس js: