Если вы спрашиваете, как получить введенный именованный элемент, довольно стандартно использовать prompt(message)
в среде разработки. Другие соображения:
Как правило, по возможности избегайте var
, чтобы не столкнуться с неожиданным поведением. let
отлично работает здесь.
Измените if(parkedCars.length <= maxCars)
на if(parkedCars.length < maxCars)
, поэтому функция не позволит пользователю набрать sh окончательный, восьмой автомобиль, если parkingCars
имеет 7 записей. Если это было задумано, и вы хотели, чтобы пользователь мог хранить 8 автомобилей в партии, измените maxCars
на 8, поскольку это более интуитивно понятно.
Определите имя автомобиля в качестве аргумента вашей функции. Здесь я переименовал его в parkingCar
, чтобы не было путаницы между аргументом и внешней переменной carName
. Я также добавил if(parkingCar)
для обработки сценария, когда пользователь ничего не вводит.
Это более стилистично c, но это хорошая идея, чтобы поместить пространство вокруг операторов и операндов, чтобы сделать ваш код более читабельным .
Если вы создаете функцию как выражение именованной функции, лучше всего использовать заключительную фигурную скобку с точкой с запятой, чтобы избежать непреднамеренного поведения.
Все, что было рассмотрено, - вот как Я бы реализовал функцию:
let carName = prompt('Enter CarName to park in Anne Lot');
const maxCars = 7
let parkedCars = [];
let parkCar = function(parkingCar) {
if(parkingCar && parkedCars.length < maxCars){
parkedCars.push(parkingCar);
console.log(parkedCars);
console.log("Welcome to Anne's Lot.");
}
else if(parkingCar) {
console.log("Sorry, Anne's Lot is at max capacity.");
} else {
console.log("Sorry, nothing to park");
}
};
parkCar(carName);