0Pricing
JavaScript Academy · درس

القيم Truthy وFalsy

اعرفوا القيم التي تُقيَّم على أنها true أو false.

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

Truthy و Falsy

في سياق منطقي، مثل عبارة if، تُعامل كل قيمة في JavaScript على أنها إما truthy أو falsy. تتصرف القيم falsy مثل false، وكل ما عداها يكون truthy.

if ("hello") {
  console.log("strings are truthy")
}

قائمة القيم Falsy

هناك ثماني قيم falsy بالضبط. احفظوها، لأن كل قيمة لا توجد في القائمة تكون truthy.

  • false
  • 0 والصفر السالب
  • السلسلة الفارغة
  • null
  • undefined
  • NaN
  • الصفر من النوع BigInt
console.log(Boolean(0))
console.log(Boolean(""))
console.log(Boolean(null))

الصفر Falsy

العدد صفر falsy، لكن أي عدد آخر، بما في ذلك الأعداد السالبة، يكون truthy.

console.log(Boolean(0))
console.log(Boolean(-5))
console.log(Boolean(0.1))

السلسلة الفارغة Falsy

السلسلة الفارغة falsy، لكن السلسلة التي تحتوي على مسافة أو على النص false تكون truthy لأنها غير فارغة.

console.log(Boolean(""))
console.log(Boolean(" "))
console.log(Boolean("false"))

Null و Undefined

كل من null وundefined هو falsy. وهما يمثلان غياب قيمة.

console.log(Boolean(null))
console.log(Boolean(undefined))

NaN قيمة Falsy

تكون NaN، وهي ناتج عملية رقمية غير صالحة، falsy. ويساعد ذلك على اكتشاف التحويلات الفاشلة في الفحوصات المنطقية.

console.log(Boolean(NaN))
console.log(Boolean(Number("abc")))

الكائنات دائمًا Truthy

كل كائن ومصفوفة يكون truthy، حتى لو كان فارغًا. ويفاجئ هذا كثيرًا من المطورين الذين يتوقعون أن تكون المصفوفة الفارغة falsy.

console.log(Boolean({}))
console.log(Boolean([]))

التحويل إلى Boolean

يُعد عامل النفي المزدوج طريقة موجزة لتحويل أي قيمة إلى مكافئها المنطقي، وهو يحاكي ما تفعله عبارة if.

console.log(!!"text")
console.log(!!0)
console.log(!![])

استخدام Truthiness في الشروط

تعتمدون غالبًا على truthiness للتحقق من القيم المفقودة. فالسلسلة الفارغة أو null أو undefined ستتجاوز جميعها فرع if.

function greet(name) {
  if (name) {
    return "Hi " + name
  }
  return "Hi guest"
}
console.log(greet(""))
console.log(greet("Ann"))

القيم الافتراضية باستخدام Or

يعيد عامل OR المنطقي أول معامل truthy، وهي طريقة شائعة لتوفير القيم الافتراضية. انتبهوا إلى أن الصفر والسلسلة الفارغة يفعّلان القيمة الافتراضية.

const input = ""
const value = input || "default"
console.log(value)

Nullish مقابل Falsy

لا يعود عامل الدمج nullish إلى القيمة البديلة إلا عند وجود null أو undefined، وليس عند وجود قيم falsy أخرى مثل الصفر، مما يجعله أكثر أمانًا للقيم الرقمية الافتراضية.

const count = 0
console.log(count || 10)
console.log(count ?? 10)

اختبار سريع

اختبروا معرفتكم بالقيم truthy وfalsy.

مراجعة

مراجعة: توجد ثماني قيم falsy، وكل ما عداها يكون truthy.

  • Falsy: false و0 والسلسلة الفارغة وnull وundefined وNaN وصفر BigInt
  • الكائنات والمصفوفات الفارغة تكون truthy
  • يحوّل النفي المزدوج القيمة إلى قيمة منطقية
  • يفحص دمج nullish القيمتين null وundefined فقط
console.log(Boolean([]))
console.log(Boolean(0))

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

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

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

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

اعرفوا القيم التي تُقيَّم على أنها true أو false. تتمرن على JavaScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

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

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

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

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

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

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

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

  1. القيم Truthy وFalsy
  2. المساواة المرنة مقابل الصارمة
  3. التحويل الضمني للأنواع في العمليات
  4. تقنيات التحويل الصريح
← العودة إلى JavaScript Academy