غير محدد
يشير إلى أنه تم الإعلان عن المتغير ولكن لم يتم تهيئته. تجدر الإشارة إلى أنه عند استخدام مشغل typeof لتحديد نوع البيانات ، فإن القيم التي يتم إرجاعها بواسطة المتغيرات غير المعلنة والمتغيرات غير المحددة غير محددة.
رسالة var ؛ console.log (typeof message) ؛ // undefinedConsole.log (typeof age) ؛ // undefined
NULL: يمثل مؤشر كائن فارغ
القيمة التي يتم إرجاعها باستخدام مشغل typeof هي "كائن". تجدر الإشارة إلى أن القيمة غير المحددة مستمدة من قيمة فارغة ، لذلك تنص ECMA-262 على أنه يجب عليهم العودة إلى حد ما عند اختبار المساواة.
console.log (null == undefined) ؛ // true
الفرق بين غير المحدد والخفي
(1) يعني غير محدد أنه لم يتم الإعلان عن متغير ، أو تم الإعلان عنه ولكن لم يتم تعيينه
(2) فارغة هي قيمة تشير إلى "لا قيمة"
(3) JavaScript يعين القيمة الافتراضية للمتغيرات غير المعينة إلى غير محددة
(4) JavaScript لا تحدد المتغيرات على Null. يتم استخدامه للسماح للمبرمج بإظهار أن المتغير المعلن مع VAR ليس له قيمة.
(5) غير محدد ليس JSON صالحًا ، بينما NULL
(6) نوع غير محدد غير محدد ، ونوع الفارغ هو كائن.
ملاحظة: كلها أنواع أساسية
كلها خاطئة (منطقية (غير محددة) // كاذبة ، منطقية (خالية) // خاطئة)
يمكنك تحديد ما إذا كان المتغير غير محدد بهذه الطريقة
متغير typeof === "غير محدد"
يمكنك تحديد ما إذا كان المتغير فارغًا بهذه الطريقة
متغير === فارغ
فهي متساوية عند مقارنتها مع علامات متساوية مزدوجة ، لكنها ليست متساوية عند مقارنتها بثلاث علامات متساوية.
null == undefined // true null === undefined // false