JavaScript / اتخاذ القرار

عوامل المقارنة والعوامل المنطقية

اكتب شروطًا مثل «أكبر من» و«لا يساوي»، واجمع شرطين في شرط واحد بـ && و ||.

العلامة == تسأل فقط «هل يساوي؟». لكن أغلب القرارات تحتاج أسئلة أخرى: هل الدرجة 50 أو أكثر؟ هل الطول أكبر من 130؟ لهذا توجد عوامل المقارنة، وكل منها يعطي true أو false.

العاملمعناهمثال (x = 30)الناتج
==يساويx == 50false
!=لا يساويx != 50true
>أكبر منx > 20true
<أصغر منx < 20false
>=أكبر من أو يساويx >= 30true
<=أصغر من أو يساويx <= 50true
JavaScript
let x = 30;
console.log(x > 20);
console.log(x < 20);
console.log(x >= 30);
console.log(x != 30);
وحدة التحكم
true
false
true
false

نضع عامل المقارنة داخل شرط if كما فعلنا مع ==. مثلًا: لعبة في الملاهي تسمح فقط لمن طوله أكبر من 130 سم:

JavaScript
let height = 91;
if (height > 130) {
    console.log("Can ride");
} else {
    console.log("Cannot ride");
}
وحدة التحكم
Cannot ride
في >= و<= تأتي العلامة = ثانيًا بلا مسافة بينهما. الكتابة => أو > = خطأ. وانتبه للفرق: x > 30 لا تشمل 30، أما x >= 30 فتشملها.

العوامل المنطقية: && و ||

أحيانًا يعتمد القرار على شرطين معًا. مثلًا: خصم لمن حضر في مجموعة و دفع 3000 أو أكثر، أو تذكرة مخفّضة للأطفال أو كبار السن. نربط الشرطين بعامل منطقي:

العامليُقرأيكون الشرط صحيحًا عندما
&&و (and)يتحقّق الشرطان كلاهما
||أو (or)يتحقّق أحد الشرطين على الأقل
JavaScript
let numberOfPeople = 3;
let fee = 3500;
if (numberOfPeople >= 2 && fee >= 3000) {
    console.log("20% off");
}
let age = 70;
if (age <= 12 || age >= 65) {
    console.log("30% off");
}
وحدة التحكم
20% off
30% off

ومع && نستطيع فحص أن قيمة تقع بين رقمين:

JavaScript
let temperature = 25;
if (temperature >= 20 && temperature <= 30) {
    console.log("Nice weather");
} else {
    console.log("Not so nice");
}
وحدة التحكم
Nice weather
اكتب مقارنة كاملة على كل جانب: age <= 12 || age >= 65 وليس age <= 12 || >= 65. والعلامة & اسمها ampersand، و| اسمها vertical bar، وكل منهما تُكتب مرتين.

تدريبات

1أكمل الفراغتدريب المنهج

أكمل الشرط: إذا كانت قيمة word أكبر من أو تساوي 70 يُطبع pass، وإلا يُطبع fail.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
let word = 60;
if (___) {
    console.log("pass");
} else {
    console.log("fail");
}
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
2أكمل الفراغتدريب المنهج

أكمل الشرط: إذا كانت قيمة height أكبر من 130 يُطبع Can ride، وإلا Cannot ride. (القيمة 170)

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
let height = 170;
if (___) {
    console.log("Can ride");
} else {
    console.log("Cannot ride");
}
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
3اكتب البرنامجتدريب المنهج

أعلن المتغير age وأسند له 15. إذا كان أكبر من أو يساوي 60 اطبع Cannot jump، وإلا اطبع Can jump.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
4اكتب البرنامجتدريب المنهج

أعلن numberOfPeople وأسند له 2، وfee وأسند له 3500. إذا كان عدد الأشخاص 2 أو أكثر و الرسوم 3000 أو أكثر اطبع Free mug.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
5اكتب البرنامجتدريب المنهج

أعلن المتغير age وأسند له 15. إذا كان العمر أصغر من أو يساوي 15 أو أكبر من أو يساوي 70 اطبع Discounts available.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
6اكتب البرنامجتدريب إضافي

لينجح الطالب في السنة يجب أن تكون درجته 50 أو أكثر و نسبة حضوره 75 أو أكثر. أعلن grade = 72 وattendance = 70. اطبع Passed إذا تحقّق الشرطان، وإلا اطبع Not passed.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.
7اكتب البرنامجتدريب إضافي

أعلن المتغير day وأسند له النص "Saturday". إذا كان اليوم "Friday" أو "Saturday" اطبع Weekend، وإلا اطبع School day.

JavaScript Ctrl/⌘ + Enter للتشغيل · Esc ثم Tab للخروج من المحرر
وحدة التحكم
اضغط «تشغيل» لترى النتيجة.

النقاط الرئيسية

  • عوامل المقارنة: == != > < >= <=، وكل مقارنة تعطي true أو false.
  • && (و): صحيح إذا تحقّق الشرطان، و|| (أو): صحيح إذا تحقّق أحدهما.
  • اكتب مقارنة كاملة على كل جانب من && و||.