ECMAScript 6 – קבועים

הגדרת קבועים אמיתיים ב-ECMAScript 6

במאמר הקודם דיברנו על סביבות עבודה שבהן נלמד על ECMAScript 6. הגיע העת ללמוד על הפיצ'ר הראשון של ECMAScript 6 – קבוע. קבוע בשפה הוא משתנה שלא ניתן לשנות אותו. משתמשים בו בדרך כלל להגדרות שלא אמורות להשתנות ואסור שהן ישתנו. הסינטקס הוא פשוט למדי:


const TEST = 10;

console.log(TEST);

במקום ה-var המוכר לנו, אנו מגדירים קבוע עם const. מקובל מאוד בכל שפות הסקריפט להגדיר קבועים עם אותיות גדולות.

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

בכל מקרה, הנה הדוגמה – נסו זאת בעצמכם! קדימה, לא להתבייש, אפשר אפילו לפתוח את הקונסולה של כלי הפיתוח, להדביק ולבדוק 🙂


"use strict";

const TEST = 10;

TEST = 8; //Error on strict mode, ignore in non strict mode.

console.log(TEST);

var TEST = 8; //Error in all modes.

למי שמתעצל – הנה codepen

See the Pen es6 const by Ran Bar-Zik (@barzik) on CodePen.

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

עוד תוספת חשובה שהשמטתי בכתיבה המקורית היא שאפשר ליצור קבועים מאובייקט באופן הבא:


const {PROP1, PROP2} = {'PROP1': 1, 'PROP2: 2}

שימושי ביותר בכל פעם שצריך קבוע. נכון, זה לא סוג של קילר אפ, אבל זה בכל זאת משהו שמעולה להכיר ודוגמה נפלאה לזה שלא צריך להבהל מ ECMAScript 6. במאמר הבא, פיצ'ר הרבה יותר משמעותי.

פוסטים נוספים שכדאי לקרוא

פתרונות ומאמרים על פיתוח אינטרנט

מדרך מעשי לכתיבת קוד עם AI Agents

טכניקות בדוקות שנבדקו במוצרים אמיתיים לכתוב קוד טוב יותר עם LLM Agent. פוסט מיוחד למתכנתים מנוסים.

יסודות בתכנות

הסבר קל ופשוט על Reinforcement Learning

הסבר פשוט למתכנתים שמסביר על איך למידה מחוזקת עובדת – הרבה יותר פשוט ממה שחשבתם ואפשר גם בג׳אווהסקריפט!

פתרונות ומאמרים על פיתוח אינטרנט

לא פרצו לנו, רק דלף לנו – לקחים טכניים מפרשת אלקטור

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

ממנטו עם גמל אין לי מושג למה אני עושה דברים
יסודות בתכנות

מה זה stateful ו-stateless

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

בינה מלאכותית

בעיות אמיתיות של אבטחה באייג׳נטים

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

גלילה לראש העמוד