האשבנג ב JavaScript? זה לא היה כבר?

19/04/2023

רשימת הפיצ'רים שייכנסו ל JavaScript ב 2023 כוללת את:

  1. האפשרות לחפש במערך מהסוף.

  2. תמיכה ב Hashbang.

  3. אפשרות להשתמש בסימבולים בתור מפתחות ב WeakMap.

  4. פונקציות לשינוי מערך (לדוגמה מיון) בהעתקה ולא בשינוי In Place.

בעוד שפיצ'רים 1, 3 ו-4 די צפויים, פיצ'ר מספר 2 הפתיע אותי. נזכיר ש HashBang הוא סימן ה #! שאומר ליוניקס איזה תוכנית צריך להפעיל כשלקובץ טקסט יש הרשאות הרצה ואנחנו "מפעילים" את הקובץ. מתכנתי Node.JS מאז ומעולם השתמשו בסימן הזה כדי לכתוב סקריפטים ב JavaScript והכל עבד, לדוגמה הסקריפט הזה:

#!/usr/bin/env node

console.log('hello world');

עובד גם ב Node וגם ב Deno ואפילו בדפדפנים, למרות שהסימן #! לא חוקי ב JavaScript. המנועים פשוט מתעלמים ממנו.

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

פירוט ההצעה כאן: https://tc39.es/proposal-hashbang/out.html

ופירוט על כל הפיצ'רים החדשים ב 2023 זמין כאן: https://pawelgrzybek.com/whats-new-in-ecmascript-2023/