שיעורי מודול (4/4)
תנאים: אם, אחרת, שליש
תוכנית כמעט אף פעם לא מריץ את כל ההוראות שלה בקו ישר. זה כל הזמן צריך להחליט: אם המחיר מתחת לסף, החל את הנחה; אם המשתמש מחובר, הצג את הפאנל; אחרת הראה את כניסה. ההוראות המשמשות לקבלת החלטות נקראות תנאים.
if / else
הטופס הבסיסי הוא if (condition) { … } else { … }:
const eta = 20;
if (eta >= 18) {
console.log('Maggiorenne');
} else {
console.log('Minorenne');
}המצב בין סוגריים מוערך; אם זה "אמת" (ב-JS טרמינולוגיה) הבלוק הראשון מבוצע, אחרת השני.
else if שרשראות
כאשר יש יותר משני מקרים, הם משורשרים עם else if:
const punti = 87;
if (punti >= 90) {
console.log('Eccellente');
} else if (punti >= 70) {
console.log('Buono');
} else if (punti >= 50) {
console.log('Sufficiente');
} else {
console.log('Da migliorare');
}רק הסניף הראשון שמתאים מבוצע.
אמת ושקר
JS מחשיב שישה ערכים "שקריים": false, 0, '' (מחרוזת ריקה), null,
undefined, NaN. כל השאר נכון - אפילו '0', 'false'
והמערך הריק [].
if ('0') console.log('arriva qui'); // 'arriva qui'
if ([]) console.log('e anche qui'); // 'e anche qui'
if (0) console.log('mai'); // (mai)האופרטור השלישוני cond ? a : b
כאשר if/else מייצר רק ערך, השליש מבטא אותו ב
שורה בודדת ולרוב הוא קריא יותר:
const eta = 20;
const stato = eta >= 18 ? 'adulto' : 'minorenne';נסה את זה
בהינתן ציון מ-0 עד 10, החזר 'פרומוסו' אם הציון הוא >= 6, אחרת 'בוצ'יאטו'. הביטוי האחרון חייב להיות 'פרומוסו' עם ציון = 7.
הצג רמז
השתמש ב'מצב הטרינרי? a :b` כביטוי האחרון.
הפתרון זמין לאחר 3 ניסיונות
סקירת התרגיל
סיווג טמפרטורה: 'caldo' אם >= 25, 'tiepido' אם >= 15, 'freddo' אחרת. עם `t = 20` התוצאה הצפויה היא 'tiepido'.
הצג רמז
אתה יכול לקנן טרינרים: `a >= 25 ? 'caldo' : a >= 15 ? 'tiepido' : 'freddo'`.
הפתרון זמין לאחר 3 ניסיונות