سلام دوستان. اگه برنامه‌نویس جاوااسکریپت باشین، احتمالاً واژه‌های ES5، ES6 و یا اکمااسکریپت به گوشتون خورده. اینکه این واژه‌ها چی هستن و چه ارتباطی با خود جاوااسکریپت دارن رو امروز بررسی می‌کنیم.

 

اکمااسکریپت چیه؟ 🤔

اکمااسکریپت که به خلاصه به اون ES گفته میشه، تعریفی به صورت زیر داره:

اکمااسکریپت یک استاندارد و شامل یک سری ویژگی‌ها و مشخصات هست که زبانی مثل جاوااسکریپت نسخه‌ی پیاده‌سازی شده و عینی این استاندارد و ویژگی‌ها هست.

زبان‌های دیگه‌ای مثل اکشن‌اسکریپت و جی‌اسکریپت هم طبق این استاندارد پیاده‌سازی شدن اما جاوااسکریپت معروف‌ترین زبانی هست که این استاندارد رو پیاده‌سازی کرده.

یک زبان می‌تونه در کنار استانداردها و ویژگی‌های اکمااسکریپت، ویژگی‌های منحصر به فرد خودش رو هم داشته باشه. مثلاً توی جاوااسکریپت و نسخه‌ای که توی مرورگرها در دسترس هست، ما یک تابع داریم به اسم alert. این تابع توی استاندارد اکمااسکریپت وجود نداره و بقیه نسخه‌ها مجبور به پیاده‌سازی اون نیستن. برای همین توی محیطی مثل Node این تابع در دسترس نیست. همچنین آبجکت DOM که فقط توی مرورگرها در دسترس هست.

 

اکما چیه؟

یک سازمان سوئیسی هست که کار اون تعریف کردن استانداردهای بین‌المللی هست. سازندگان جاوااسکریپت این زبان رو برای استانداردسازی به این سازمان ارائه دادن و این سازمان، اسم این استاندارد رو ECMA-262 گذاشت که ما با نام مستعار ECMAScript می‌شناسیم.

 

TC39 چیه؟

اسم یک کمیته هست که کار اون استانداردسازی جاوااسکریپت بر اساس اکمااسکریپت هست. این کمیته از افرادی از مازیلا، گوگل، اپل، فیسبوک و ... تشکیل شده.

 

ورژن‌های مختلف ES

هر بار که یک ورژن جدید از استاندارد ES منتشر میشه، مدتی بعد می‌تونیم اون ویژگی‌ها رو توی مرورگرهای جدید یا بطور کلی موتورهای جدید جاوااسکریپت ببینیم. تا الان ورژن‌های زیادی از ES معرفی شده که شاید معروف‌ترین اون ES6 بوده که با ویژگی‌های اون می‌تونین اینجا آشنا بشین.

 

خب دوستان امیدوارم از این قسمت هم استفاده کرده باشین. برای ادامه آموزش قسمت‌های بعدی رو ببینین. روزتون خوش ✌️😉

 

https://stackoverflow.com/questions/912479/what-is-the-difference-between-javascript-and-ecmascript

https://flaviocopes.com/ecmascript/

https://www.freecodecamp.org/news/tc39-and-its-contributions-to-ecmascript-c178b77f32e1/