Приведённый код уже использует class ES6, constructor и прототипный метод getDetails. Дополнительное преобразование функции-конструктора здесь не требуется.
Преобразование функции‑конструктора в класс ES6
Приведённый код уже использует 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. Исходная функция-конструктор для отдельного сравнения в условии не дана.