Помогите пожалуйста JavaScript
// Необходимо создать объект, который будет
// представлять из себя лифт. У него
// должны быть методы:
// ● printFloor - печатает текущий этаж, на котором
// находится лифт
// ● upOneFloor - перемещает на один этаж вверх
// ● downOneFloor - перемещает на один этаж вниз
// ● toFloor - принимает целое числовое
// значение от 1 до 16 - переместиться на
// определенный этаж.
// Изначально лифт находится на первом этаже.
// Когда мы вызываем метод toFloor(),
// программа должна в консоли отобразить
// постепенное перемещение лифта на нужный этаж
// (только в этом методе).
// ● Лифт должен хранить текущий этаж, на котором он находится.
// ● Для наглядности, вызовите метод toFloor несколько раз в программе.
// ● Метод toFloor должен использовать методы oneFloorUp и oneFloorDown для
// перемещения по этажам, а также метод printFloor для вывода текущего этажа лифта.
// ● В здании 16 этажей, нельзя, чтобы лифт мог уехать ниже первого или выше 16-го этажа.
Ответы
const elevator = {
currentFloor: 1,
printFloor() {
console.log(`Вы находитесь на ${this.currentFloor} этаже`);
},
upOneFloor() {
if (this.currentFloor < 16) {
this.currentFloor++;
this.printFloor();
} else {
console.log('Вы находитесь на последнем этаже');
}
},
downOneFloor() {
if (this.currentFloor > 1) {
this.currentFloor--;
this.printFloor();
} else {
console.log('Вы находитесь на первом этаже');
}
},
toFloor(floor) {
if (floor < 1 || floor > 16) {
console.log('Такого этажа не существует');
return;
}
while (this.currentFloor < floor) {
this.upOneFloor();
}
while (this.currentFloor > floor) {
this.downOneFloor();
}
}
};
// Пример использования объекта лифта
elevator.printFloor(); // Вы находитесь на 1 этаже
elevator.upOneFloor(); // Вы находитесь на 2 этаже
elevator.toFloor(5); // Вы находитесь на 5 этаже
elevator.toFloor(20); // Такого этажа не существует
В этом примере объект elevator имеет четыре метода: printFloor, upOneFloor, downOneFloor, и toFloor. Хранение текущего этажа осуществляется через свойство объекта currentFloor.
Метод printFloor просто выводит текущий этаж на консоль.
Методы upOneFloor и downOneFloor перемещают лифт на один этаж вверх или вниз соответственно. Они проверяют, не достиг лифт верхней или нижней границы здания, и выводят соответствующее сообщение на консоль.
Метод toFloor перемещает лифт на заданный этаж. Он проверяет, что переданный этаж не выходит за пределы здания, и затем перемещает лифт на этаж с помощью методов upOneFloor и downOneFloor.