Skip to content
בעמוד זה

תחביר

Syntax (סינטאקס) = תחביר

לכל שפת תכנות יש תחביר המגדיר את הכללים כיצד כותבים קוד בשפה.

ברוב השפות התחביר הוא מאוד Strict (קפדן) וטעות בתחביר תגרום לשגיאת הרצה, כלומר, לא יהיה ניתן אפילו להריץ את התוכנה בכלל.

Java Script הינה שפה שברובה היא מאוד קפדנית, אך יש לה כמה דברים שבהם היא מקלה יותר משפות אחרות, על כך בהמשך פרק זה.

במקרה הנוכחי כל קוד Java Script שנכתוב יפורש ע"י הדפדפן כיוון ש-Java Script היא שפת סקריפט מה שאומר שהיא רצה מייד בתוכנה שמסוגלת לקרוא אותה.

כל קוד בשפת Java Script נכתב משמאל לימין באותיות לטיניות (ABC רגיל) ומלמעלה למטה. כך שפקודה שכתובה למעלה מפקודה אחרת תרוץ לפני הפקודה שאחריה.

סדר הפעולות (Execution order) הוא דבר חשוב כיוון שאם למשל אנו רוצים להריץ חישובים על מידע מסוים לפני שיש לנו אותו יכול לגרום לשגיאות מעצבנות.

נקודה פסיק

בהרבה שפות תוכנות בסוף שורה חובה לשים את סימן הנקודה-פסיק ; ובכך אנו מסמנים את סוף השורה. בשפת Java Script לעומת זאת הדבר לא חובה אך מומלץ.

מה היתרון בלכתוב נקודה-פסיק?

יצירת הרגל להוסיף נקודה-פסיק בסוף כל שורה תעזור לנו להבין מדוע בקוד של אנשים אחרים יש נקודה-פסיק כמו כן לקרוא בקלות יותר שפות תכנות אחרות רבות שבהם נקודה-פסיק בסוף שורה זהו דבר מנדטורי.

בנוסף שימוש עם נקודה-פסיק מאפשר לנו לכתוב כמה פקודות בשורה אחת. לדוגמא את שלושת שורות הקוד הבאות:

javascript
let a = 0
a = getUserPoints()
setOtherPoints(a - 2)

שכעת כתובות בלי נקודה-פסיק ועובדות מצוין – אל תתעכבו על משמעות הקוד

בעזרת נקודה-פסיק נוכל לכתוב את כל שלושת השורות בשורה אחת

javascript
let a = 0; a = getUserPoints(); setOtherPoints(a - 2);

תגידו, מה העניין? במקרה כאן באמת יהיה יותר נוח לפרוש את הקוד לשלוש שורות. אך, יהיו מקרים אחרים שבהם הדבר יכול להיות שימושי.

אבל יותר חשוב זה להבין מה קרה כאן. המפרש, עובר על הקוד הרי וקורא אותו שורה אחר שורה וכאשר הוספנו את סימן הנקודה-פסיק המפרש הבין שהטקסט שיגיע אח"כ כבר שייך לשורה חדשה ולא משנה אם הוא באמת נמצא בשורה חדשה או לא.

לעורכי קוד רבים יש אפשרות לאוטו-פירמוט שזוהי תכונה של עיצוב הטקסט בצורה יפה. אחד הדרכים בהם עורך הקוד יוכל לעצב עבורכם אוטומטית את כל הקוד זה אם תקפידו להשתמש בנקודה-פסיק באופן קבוע. כיוון שנקודה פסיק מסמל משמעות שאין לה פירוש אחר.

דבר זה מביא אותנו לכלל נוסף את המפרש לא מעניין כמה רווחים וכמה ירידות שורה יש פעולות עד לסיום הפקודה. כך קטע קוד הזה

javascript
let 
    a 
            = 0;

זהה בדיוק לקטע הקוד הבא

javascript
let a = 0; 

למרות שניתן לראות שיש כאן המון רווחים וירידות שורה מיותרים המפרש יתעלם מאלו המיותרים ויפענח את הקוד.

לא אהבתם את הנקודה-פסיק ואין לכם כוח להתרגל אליו? לא נורא, הכול יעבוד אותו דבר.

סוגריים

בסוגריים עגולות אנו משתמשים לתחם ערך ו\או תוצאה של ערך.

בנוסף עם סוגריים עגולות נשתמש עבור פונקציות.

javascript
(a = b + c)

כאשר אנו מתחמים אזור בקוד שלנו נשתמש בסוגריים מסולסלות {} כמו בדוגמה הבאה

javascript
if(userIsLoggedIn()){
	
}

מזהים

בקטע קוד האחרון ראינו את המילה if בתחילת השורה מילה זו היא נקראת מילה-שמורה והיא "שמורה" עבור פעולות טכניות הדרושות לשפה (במקרה הנוכחי לבדיקת תנאי) לשפת Java Script כמה עשרות של מילים שמורות אשר לא נוכל להשתמש בהם לשימוש אישי אלא אך ורק בהקשר הטכני שלהם.

חשוב לזכור שמילים שמורות וכן כל מזהה אחר שנגדיר בתוכנה (עוד על מזהים בפרק הבא) הם מזהים שיש להם תלות-ברישיות פרוש הדבר שהמזהה if לא זהה למזהה IF (כל האותיות גדולות) ולא זהה למזהה iF (אפילו רק אות אחת גדולה) מה שהופך את שפת Java Script לשפה תלוית-רישיות.

הערות

ניתן להוסיף טקסט בגוף התוכן של קוד Java Script ולהגדיר שעל המפרש להתעלם מטקסט זה. טקסט כזה נקרא הערות.

אפשר להוסיף הערות בקוד באחד משתי הצורות הבאות

תוך-שורתי (Inline) המתחיל עם שני לוכסנים-הפוכים אחד אחרי השני וכל טקסט שייכתב אחרי המזהה הנ"ל יחשב כהערה והמפרש יתעלם ממנו. כמו בדוגמאות הבאות:

javascript
let a = 15; // Giving a initial value

// now run the for-loop
for(let i =0; i < a; a++){
	// TODO:
}

בלוק (Block) המתחיל עם לוכסן-הפוך + כוכבית ומסתיים עם כוכבית + לוכסן הפוך. כמו בדוגמאות הבאות:

javascript
let a = 15; /* Giving a initial value */

/* now run the for-loop */
for(let i =0; i < a /* Chaeking i against a */ ; a++){
	/* TODO: */
}

בהערה מסוג Inline היתרון הוא קלות היכולת להפוך כל שורה להערה ובכך לבדוק חלקים בתוכנה במהירות. היתרונות לשימוש בהערה מסוג Block הם היכולת להזין הערה באמצע שורת קוד וכן היכולת להפוך קטע קוד גדול של הרבה שורות להערה בפעולה קצרה יותר.

מתי משתמשים בהערות?

הדעות בנושא די חלוקות, אבל כללים שכדאי לזכור.

  • בתחילת הדרך כמפתחים נוסיף הערות בכל חלק של הקוד שאנו חוששים שלא יובן לנו בהמשך ללא הערות.
  • בהמשך הדרך הכלל הנפוץ אומר שהערות מטרתן להסביר למה בחרנו בדרך מסוימת ולא איך עשינו דרך מסוימת