جاري التحميل...

القيم المنطقية

قصصت النصوص وبحثت فيها. البرنامج يحتاج أحيانًا جوابًا واضحًا نعم أو لا — هل النموذج جاهز؟ هل وُجد تطابق؟ هذا النوع هو قيمة منطقية: فقط true أو false. هنا نتعرّف على القيمة نفسها؛ التفرع بـ if درس لاحق.

ما القيمة المنطقية في JavaScript؟

القيمة المنطقية تعني نعم/لا. الكلمتان المفتاحيتان true و false — بلا علامات اقتباس. typeof true يعطي "boolean". يمكنك حفظ علم (let ready = true)، أو الحصول على منطقي من مقارنة (age >= 18)، أو التحويل بـ Boolean(value). النصوص مثل "true" تبقى نصًا وليست منطقية. قائمة قصيرة من القيم falsy (تصبح false عند التحويل) تقيك من المفاجآت مع 0 و "" و null و undefined.

أدوات القيم المنطقية

📊 أفكار منطقية يومية للمبتدئ

الفكرة مثال النتيجة / ملاحظة
نعم حرفية true كلمة مفتاحية وليست نصًا
لا حرفية false كلمة مفتاحية وليست نصًا
typeof typeof false "boolean"
مقارنة 5 > 3 true
تحويل Boolean(0) false (الصفر غالبًا falsy)
تحويل نص Boolean("hi") true (نص غير فارغ)

اكتب true و false

استخدم الكلمتين true و false. اطبع القيمة و typeof لترى التسمية "boolean".

قيم true و false

javascript
let ready = true;
let done = false;
console.log(ready);
console.log(done);
console.log(typeof ready);
console.log(typeof done);

المقارنات تُرجع قيمة منطقية

عوامل مثل > و < و >= و <= و === و !== تجيب بـ true أو false. لا تحتاج إلى اختراع المنطقي يدويًا في كل مرة — المقارنة تنتجه.

المقارنة تعطي true أو false

javascript
console.log(10 > 5);
console.log(2 === 2);
console.log(2 === "2");
console.log(7 < 3);

حوّل بـ Boolean()

Boolean(value) يحوّل قيمة أخرى إلى true أو false. القيم «الفارغة تقريبًا» تصبح false؛ وكثير من القيم اليومية تصبح true.

التحويل بـ Boolean

javascript
console.log(Boolean(1));
console.log(Boolean(0));
console.log(Boolean("hello"));
console.log(Boolean(""));

خريطة falsy قصيرة

هذه تصبح false مع Boolean() (أو لاحقًا في شرط): false و 0 و "" و null و undefined و NaN. تقريبًا كل ما يجرّبه المبتدئ أولًا truthy — بما في ذلك "0" و "false" كنصوص غير فارغة.

قيم falsy يجب تذكّرها

javascript
console.log(Boolean(false));
console.log(Boolean(0));
console.log(Boolean(""));
console.log(Boolean(null));
console.log(Boolean(undefined));

قيم truthy تفاجئ المبتدئ

النصوص غير الفارغة truthy — حتى "0" و "false". والعدد 1 أيضًا truthy. اطبعها ليثبت الفرق مع falsy.

مفاجآت truthy

javascript
console.log(Boolean("0"));
console.log(Boolean("false"));
console.log(Boolean(1));
console.log(Boolean(" "));

اعرض علم نعم/لا في الصفحة

احفظ قيمة منطقية ثم ضعها في الصفحة بـ textContent.

الصفحة تعرض علم ready

html
<!DOCTYPE html>
<html>
<head>
<title>Booleans — ready flag</title>
</head>
<body>
<p id="out">…</p>
<script>
let ready = true;
document.getElementById("out").textContent = "ready = " + ready;
</script>
</body>
</html>

الفقرة تعرض المنطقي على الصفحة (ready = true أو ready = false). غيّر فقط ready وحدّث الصفحة وتأكد من تغيّر النص. الدروس اللاحقة تستخدم هذا العلم داخل if كامل.

جرّبها بنفسك

  1. أنشئ let on = true و let off = false؛ اطبع القيمتين ونتيجتي typeof.
  2. اطبع 8 >= 8 و 3 !== 4 و 1 === "1"؛ خمّن قبل التشغيل.
  3. نادِ Boolean على 1 و 0 و "ok" و ""؛ سجّل أيها true.
  4. اطبع Boolean("0") و Boolean(0) — النص truthy والصفر العددي falsy.
  5. في عرض HTML اجعل ready يساوي false وحدّث واقرأ السطر الجديد.
  6. غيّر التسمية قبل + ready بكلمة قصيرة منك مع الإبقاء على المنطق نفسه.

أخطاء شائعة

  • كتابة "true" أو "false" بعلامات اقتباس — هذه نصوص وليست منطقية
  • استخدام True / False بحروف كبيرة — الكلمات في JavaScript صغيرة: true / false
  • الظن أن 1 و 0 هما النوع المنطقي — هما أرقام؛ التحويل قد يربطهما لكن typeof 1 هو "number"
  • نسيان أن المقارنة تُرجع منطقيًا جاهزًا — غالبًا تحفظ النتيجة: let ok = score >= 10
  • اعتبار النص غير الفارغ "false" قيمة falsy — Boolean("false") يساوي true

ملخص

  • القيمة المنطقية هي فقط true أو false (كلمات مفتاحية بلا اقتباس)
  • typeof يعطي "boolean"؛ المقارنات مثل === و > تُرجع منطقيًا
  • Boolean(value) للتحويل؛ تذكّر قيم falsy الشائعة: 0 و "" و null و undefined و false و NaN
  • النصوص "true" / "false" نص — ليست النوع المنطقي
  • التالي: null و undefined — فكرتان عن «الفراغ» وليستا منطقيتين

🧠 اختبر معرفتك

جاهز للبدء

اختبر معرفتك

تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع

❓
8
الأسئلة
🎯
70%
للنجاح
♾️
∞
الوقت
🔄
∞
المحاولات

📝 التعليمات

  • اقرأ كل سؤال بعناية
  • اختر أفضل إجابة لكل سؤال
  • يمكنك إعادة الاختبار عدة مرات كما تريد
  • سيتم عرض تقدمك في الأعلى