Преобразование функции‑конструктора в класс ES6

Приведённый код уже использует class ES6, constructor и прототипный метод getDetails. Дополнительное преобразование функции-конструктора здесь не требуется.

Короткий ответ

Что ответить на собеседовании

Приведённый код уже использует class ES6, constructor и прототипный метод getDetails. Дополнительное преобразование функции-конструктора здесь не требуется.

Подробный разбор

Ответ с пояснениями

Условие

Перепишите заданный конструктор и прототипный метод, используя современный синтаксис классов JavaScript.

class Bike {
  constructor(model, color) {
    this.model = model;
    this.color = color;
  }

  getDetails() {
    return this.model + ' bike has' + this.color + ' color';
  }
}

Ответ

Приведённый код уже использует class ES6, constructor и прототипный метод getDetails. Дополнительное преобразование функции-конструктора здесь не требуется.

Поля model/color создаются в экземпляре, getDetails доступен через Bike.prototype. Можно исправить только читаемость строки: return this.model + ' bike has ' + this.color + ' color'; — в исходнике отсутствовал пробел после has. Исходная функция-конструктор для отдельного сравнения в условии не дана.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее