Задать вопрос
RatiboR1978
@RatiboR1978

Как прописать символ в конструкторе?

Добрый день! Не могу понять как прописать символ в конструкторе, подскажите пожалуйста.
Вот код: https://repl.it/Hpqy
Пример результата: AA-1419
  • Вопрос задан
  • 468 просмотров
Подписаться 1 Оценить 12 комментариев
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@AntowaKartowa
В последнем комментарии дали реализацию соответствующую заданию. Символ присваивается в качестве значения статического свойства класса. BarcodeGenerator.prefix = Symbol();

А в вашей перавоначальной реализации во-первых this[prefix] не создает ничего. Если свойство не должно содержать изначально никаких значений, то принято создавать (инициализировать) свойство со значением null.

Потом вы создаете константу prefix внутри функции конструктора класса, а доступ получить к ней хотите в другой функции. Область видимости константы ограничена функцией. Нужно было так объявлять
this.prefixKey = Symbol();
this[this.prefixKey] = null;

Но тогда generator[BarcodeGenerator.prefix] = 'AA'; ничего не дает. В первоначальном варианте понадобился бы еще один метод для смены префикса в экземпляре класса. А это противоречит заданию
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы