@Alex10214

Можно ли записывать класс таким образом?

Приветству, есть такой вопросик..
Я всегда пишу классы так:
class Example {
    constructor(name, lastName, age) {
        this.name = name;
        this.lastName = lastName;
        this.age = age;
    }
}


правильно ли вообще писать их так? Или можно ли их писать так?
class Example {
    constructor() {}

    num = 0;
    word = '';
    arr = [];
}
let s = new Example()
s.num = 10;
s.arr.push(20);

Просто не определять переменные в конструкторе, а чуть ниже. Но при этом задавать их значение по умолчанию.
  • Вопрос задан
  • 68 просмотров
Решения вопроса 2
@karminski
Senior PHP /React.js developer
Можно, но осторожно. Пока это еще экспериментальная фича (публичные/приватные поля).
https://developer.mozilla.org/ru/docs/Web/JavaScri...
Ответ написан
Можно писать и так и так.
Если поля инстанса должны определяться во время создания и по логике приложения у него не может быть дефолтовых значений, тогда первый вариант.
Если логика приложения допускает что у инстанса бывают дефолтовые значения и их при желании можно не переопределять, тогда второй вариант.
Код должен подсказывать разработчикам, которые пишут после тебя, логику твоего приложения.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы