In this post, we will learn about ECMA, ECMAScript, TC39, and all ECMAScript versions.
What are ECMA, ECMAScript, and TC39
ECMA (European Computer Manufacturer’s Association):
– Develops standards for information technology and consumer electronics.
– Languages such as JavaScript, Dart-lang, and C# were standardized by ECMA.
ECMAScript:
A JavaScript standard intended to ensure the interoperability of web pages across different browsers.
TC39 (Technical Committee number 39):
– It is part of ECMA, the institution which standardizes the JavaScript language under the “ECMAScript” specification.
– This committee conducts meetings regularly and usually the members are browser vendors.
– Now the standard is to publish new specifications once a year.
– ES5 was published in 2009 and after that, the major release was ES6, ES7, ES8, and so on.
ECMAScript versions history
Edition | Date | Features |
---|---|---|
ES6 (ES2015) | June 2015 | 1. Variable Scoping 2. Arrow functions 3. Classes 4. Enhanced object literal 5. Template literals 6. Destructuring 7. Default parameters 8. Rest parameter 9. Spread Operator 10. Iterators & For..of 11. Generators 12. Modules 13. Set 14. Weakset 15. Map 16. Weakmap 17. Unicode 18. Proxies 19. Symbols 20. Promises 21. Reflect 22. Binary and Octal 23. Proper Tail calls 24. Array find methods |
ES7 (ES2016) | June 2016 | 1. Array includes 2. Exponentiation Operator |
ES8 (ES2017) | June 2017 | 1. Async functions 2. Object values 3. Object entries 4. Object property descriptors 5. String padding 6. Shared memory and atomics 7. Trailing commas |
ES9 (ES2018) | June 2018 | 1. Async iterators 2. Object rest and spread operators 3. Promise finally |
ES10 (ES2019) | June 2019 | 1. Array flat and flatMap 2. Object formEntries 3. String trimStart and trimEnd 4. Symbol description 5. Optional Catch Binding 6. JSON Improvements 7. Array Stable Sort 8. Function.toString() 9. Private Class Variables |
ES11 (ES2020) | June 2020 | 1. BigInt 2. Dynamic Import 3. Nullish Coalescing Operator 4. Optional chaining 5. Promise allSettled 6. String matchAll 7. globalThis 8. import.meta 9. for..in order |
ES12 (ES2021) | June 2021 | 1. replaceAll 2. promise.any 3. WeakRef 4. Numeric Separators 5. Logical Operators |
Next, I will be writing posts on topics under each ECMAScript version so stay tuned for the updates and we will learn everything about the ECMAScript.
Visit Techtalkbook to find more related topics.