Этот пост - всего лишь небольшой совет о свойствах ES6 +. Мы можем найти во многих языках поля экземпляра и класса (статические). Давайте посмотрим на пример:
1 - свойство экземпляра
class Employee { constructor() { this.Name = "Leonardo Lima"; } } const emp = new Employee(); console.log(emp.Name); //output Leonardo Lima console.log(Employee.Name); //output undefined
В приведенном выше коде мы просто создаем класс и определили поле экземпляра с именем Имя, и это поле доступно только через экземпляр, переменную emp. Мы можем переписать этот код, удалив конструктор:
class Employee { Name = "Leonardo Lima"; } const emp = new Employee(); console.log(emp.Name); //output Leonardo Lima console.log(Employee.Name); //output undefined
2 - Класс собственности
Чтобы создать свойство класса, нам нужно создать поле с помощью ключевого слова static:
class Employee { static Name = "Leonardo Lima"; } const emp = new Employee(); console.log(emp.Name); //output undefined console.log(Employee.Name); //output Leonardo Lima
Как видно из приведенного выше кода, теперь поле Имя доступно напрямую через класс, и вы не можете получить к нему доступ с помощью экземпляра emp.
Спасибо за прочтение!