← المستوى 2 – الساحر

الدرس 3 من 8 ⏱ 30 دقيقة

المتغيرات والشروط

علّم صفحتك أن تتذكّر وتتخذ قرارات. هذا قلب البرمجة.

شاهد معي: المتغيرات – ذاكرة البرنامج

المتغير (variable) صندوق مُوسَم يخزن فيه البرنامج قيمة:

let clickCount = 0;        // number
let name = "Jake";         // string (text)
let isWeekend = true;      // true/false

يمكنك إجراء عمليات حسابية على المتغيرات وتغييرها:

clickCount = clickCount + 1;   // increase by 1
clickCount++;                  // same thing, shorter

شاهد معي: عداد النقرات

لنجمع متغيراً مع الزر من الدرس السابق:

<button id="counter">Clicked: 0×</button>
const counter = document.getElementById("counter");
let count = 0;

counter.addEventListener("click", () => {
  count++;
  counter.textContent = "Clicked: " + count + "×";
});

لأول مرة، الصفحة تتذكّر شيئاً. كل نقرة تزيد الرقم في الصندوق وتعرضه.

شاهد معي: الشروط – اتخاذ القرارات

الشرط (condition) يقول: «إن كان هذا صحيحاً، افعل A. وإلا، افعل B.»

if (count >= 10) {
  counter.textContent = "Ten clicks! You've got some serious stamina 🏆";
} else {
  counter.textContent = "Clicked: " + count + "×";
}

دورك الآن 💪

ابنِ عداداً بمفاجأة: بعد عدد معيّن من النقرات، يحدث شيء إضافي.

🏫 موقع المدرسة – تصويت لأفضل طعام في المقصف
<h2>Vote for pizza day!</h2>
<button id="vote">Vote 🍕 (0 votes)</button>
<p id="result"></p>
const vote = document.getElementById("vote");
const result = document.getElementById("result");
let votes = 0;

vote.addEventListener("click", () => {
  votes++;
  vote.textContent = "Vote 🍕 (" + votes + " votes)";

  if (votes >= 5) {
    result.textContent = "Decided! Pizza day wins the election. 🏆";
  }
});
🙋 موقع شخصي – عداد مهارة
<h2>How many times can I juggle the ball?</h2>
<button id="kick">Kick! (0)</button>
<p id="record"></p>
const kick = document.getElementById("kick");
const record = document.getElementById("record");
let kicks = 0;

kick.addEventListener("click", () => {
  kicks++;
  kick.textContent = "Kick! (" + kicks + ")";

  if (kicks === 20) {
    record.textContent = "20 kicks – new personal record! 🎉";
  }
});
🌍 يوميات السفر – عداد الدول
<h2>Country counter</h2>
<button id="country">Add a country (0)</button>
<p id="rating"></p>
const country = document.getElementById("country");
const rating = document.getElementById("rating");
let countryCount = 0;

country.addEventListener("click", () => {
  countryCount++;
  country.textContent = "Add a country (" + countryCount + ")";

  if (countryCount >= 10) {
    rating.textContent = "Ten countries – you're a globetrotter! 🌍";
  } else if (countryCount >= 5) {
    rating.textContent = "Five countries – beginner traveler. 🎒";
  }
});

لاحظ else if – هكذا تربط شروطاً متعددة.

⚽ موقع النادي – متتبع الأهداف
<h2>Shooting practice</h2>
<button id="goal">GOAL! ⚽</button>
<p id="score">Score: 0</p>
const goal = document.getElementById("goal");
const score = document.getElementById("score");
let goals = 0;

goal.addEventListener("click", () => {
  goals++;

  if (goals >= 10) {
    score.textContent = "Score: " + goals + " – hat trick and more! Player of the match 🏆";
  } else {
    score.textContent = "Score: " + goals;
  }
});
💡

تعلّمت للتو برمجة حقيقية. المتغيرات والشروط ليست «أشياء ويب» فقط – تعمل بنفس الطريقة في Python وفي الألعاب وفي التطبيقات. من يعرف المتغيرات والشروط يستطيع التحدث مع أي لغة برمجة في العالم.

تحقق من نفسك: عدادك يعدّ، وعند الوصول للحد، يحدث شيء إضافي. حاول شرح الكود بصوت عالٍ، سطراً سطراً – إن استطعت، أتقنت الأساسيات.

ما ستخرج به من هذا الدرس