0Pricing
JavaScript Academy · درس

typeof والقيم Truthy/Falsy و== مقابل ===

استخدم typeof بأمان، وتعرّف إلى القيم truthy/falsy، وقارن القيم على نحو صحيح باستخدام ===.

typeof والقيم Truthy/Falsy و== مقابل === درس مجاني في JavaScript Academy على CoddyKit. هذا هو الدرس 2 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في JavaScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة JavaScript Academy 3 دروس في المجموع.

مقدمة

الهدف: تعلّم كيف يحدّد typeof الأنواع، وما القيم truthy أو falsy، ومتى تستخدم === بدلًا من ==.

  • أساسيات typeof
  • القيم truthy في مقابل falsy
  • المساواة الصارمة
typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 1

جولة على typeof

يُعد typeof سريعًا مع القيم البدائية. انتبه إلى السلوك القديم غير الاعتيادي: يعيد typeof null القيمة "object".

// typeof returns a string describing the type
console.log(typeof 42);        
 // "number"
console.log(typeof "hi");       
// "string"
console.log(typeof true);      
 // "boolean"
console.log(typeof undefined);  
// "undefined"
console.log(typeof 10n);        
// "bigint"
console.log(typeof Symbol("x"));
// "symbol"
console.log(typeof null);       
// "object"  (historic quirk)
typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 2

القيم truthy في مقابل falsy (مفهوم)

القيم falsy: 0 و-0 و0n و"" وfalse وnull وundefined وNaN. وكل ما عدا ذلك هو truthy (مثل "0" و"false" و[] و{} وfunction(){}).

typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 3

اختبار truthy وfalsy

استخدم Boolean(x) أو if لمعرفة كيفية تصرف قيمة ما في الشروط.

// Use Boolean(x) or if (x) to test truthiness
console.log(Boolean("0"));  
// true (non-empty string)
console.log(Boolean(""));   
// false (empty string)
console.log(Boolean([]));   
// true (arrays are objects)
console.log(Boolean(0));    
// false
console.log(Boolean({}));   
// true
typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 4

مشكلات المساواة غير الصارمة

تُجري == تحويلًا للأنواع، ما يؤدي إلى تطابقات مربكة. تجنب استخدامها في معظم الشيفرات.

// == performs type coercion: can be surprising
console.log(0 == false);     
// true
console.log("" == 0);       
 // true
console.log(null == undefined); 
// true
console.log("5" == 5);      
// true  (string coerced to number)
typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 5

المساواة الصارمة

استخدم === و!== لإجراء مقارنات يمكن التنبؤ بها من دون تحويل للأنواع.

// === compares without coercion: safer and clearer
console.log(0 === false);    
// false
console.log("" === 0);       
// false
console.log("5" === 5);      
// false
console.log(5 === 5);        
// true
typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 6

اختبار المساواة الصارمة

تحقّق سريع: المساواة الآمنة.

typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 7

مراجعة

مراجعة: يحدّد typeof القيم البدائية (انتبه إلى null)، وتعلمت القيم falsy الشائعة، ورأيت لماذا تكون === أوضح من ==.

typeof والقيم Truthy/Falsy و== مقابل === — رسم توضيحي 8

الأسئلة الشائعة

هل درس «typeof والقيم Truthy/Falsy و== مقابل ===» مجاني؟

نعم — نص درس «typeof والقيم Truthy/Falsy و== مقابل ===» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة JavaScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة JavaScript Academy 3 دروس في المجموع.

ماذا ستتعلم في «typeof والقيم Truthy/Falsy و== مقابل ===»؟

استخدم typeof بأمان، وتعرّف إلى القيم truthy/falsy، وقارن القيم على نحو صحيح باستخدام ===. تتمرن على JavaScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ JavaScript Academy؟

لا تُشترط خبرة سابقة. JavaScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 3.

كم من الوقت يستغرق درس «typeof والقيم Truthy/Falsy و== مقابل ===»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس JavaScript Academy هذا؟

نعم. كل درس في JavaScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. القيم البدائية مقابل الكائنات والأنواع الأساسية
  2. typeof والقيم Truthy/Falsy و== مقابل ===
  3. تحويل الأنواع: أنماط آمنة لتجنّب المفاجآت
← العودة إلى JavaScript Academy