Slide 7
Slide 7 text
Year ECMAScript Version TypeScript Version ECMAScript Features TypeScript Features
1997 ES1 - Basic features: types, syntax, operators, objects -
1998 ES2 - Minor editorial changes -
1999 ES3 -
Regular Expressions, try/catch, tighter specification of
errors, more built-in functions
-
2009 ES5 -
"Strict mode," JSON support, Array enhancements
(forEach, map, filter, reduce, etc.), accessor properties
-
2012 - TypeScript 0.8 - Initial release, basic typing, interfaces, classes, modules
2014 - TypeScript 1.0 -
Official stable release, annotations for shapes of
JavaScript objects
2015 ES6/ES2015 TypeScript 1.5
Arrow functions, Promises, Classes, Modules, Template
literals, Destructuring, Default parameters
Decorators, ES6 module compilation
2016 ES7/ES2016 TypeScript 2.0 Array.prototype.includes, Exponentiation Operator
Null- and undefined-aware types, Control flow based type
analysis, Discriminated unions
2017 ES8/ES2017 TypeScript 2.1
Async/await, Object.entries(), Object.values(), String
padding, Trailing commas
Keyof and lookup types, Mapped types, Object rest and
spread
2018 ES9/ES2018 TypeScript 3.0
Asynchronous iteration, Promise finally, Rest/Spread
Properties
Project references, Tuples in rest parameters and spread
expressions
2019 ES10/ES2019 TypeScript 3.5
Array.prototype.{flat,flatMap}, Object.fromEntries, Optional
catch binding
Omit helper type, Improved excess property checks in
union types
2020 ES11/ES2020 TypeScript 4.0
BigInt, Dynamic import, Nullish coalescing Operator,
Optional Chaining
Variadic tuple types, Labeled tuple elements, Class
property inference from constructors, Short-circuiting
assignment operators (??=, &&=, ||=)
2021 ES12/ES2021 TypeScript 4.1
String.prototype.replaceAll, Promise.any, Logical
assignment operators
Template literal types, Key remapping in mapped types,
Recursive conditional types
2022 ES13/ES2022 TypeScript 4.9 top-level await. public and private fields. Object.hasOwn
satisfies operator, auto-accessors in classes (proposal),
improvements in type narrowing and checks
2023 ES14/ES2023 TypeScript 5.3 New array functions: toSorted, toReversed, ...
Improved type narrowing, correctness checks and
performance optimizations
ES.Next TypeScript 5.4 Object.groupBy and Map.groupBy support