11 Amazing New JavaScript Features in ES13
Like a lot of other programming languages, JavaScript is constantly evolving. Every year, the language is made more powerful with new capabilities that let developers write more expressive and concise code.
Let’s explore the most recent features added in ECMAScript 2022 (ES13), and see examples of their usage to understand them better.
1. Class Field Declarations
Before ES13, class fields could only be declared in the constructor. Unlike in many other languages, we could not declare or define them in the outermost scope of the class.
class Car {
constructor() {
this.color = 'blue';
this.age = 2;
}
}const car = new Car();
console.log(car.color); // blue
console.log(car.age); // 2
ES13 removes this limitation. Now we can write code like this:
class Car {
color = 'blue';
age = 2;
}const car = new Car();
console.log(car.color); // blue
console.log(car.age); // 2
2. Private Methods and Fields
Previously, it was not possible to declare private members in a class. A member was traditionally prefixed with an underscore (_
) to indicate that it was meant to be private, but it could still be accessed…