Написать функцию, которая принимает на вход от одного до трёх параметров и возвращает
Добрый день, помогите с задачей, пожалуйста.
Написать функцию, которая принимает на вход от одного до трёх параметров и возвращает объект.(js) Первый параметр - число, обязательный параметр. Второй параметр - строка, не обязательный параметр. Третий параметр - массив строк, не обязательный параметр. Должно выглядеть примерно так: createError(code, message, detail) { /* тут тело функции */ } Пример поведения: createError(404); // вернёт объект { code: 404, message: '' } createError(400, 'Неправильный запрос'); // вернёт объект { code: 400, message: 'Неправильный запрос' } createError(400, ['page не указано', 'limit должен быть в диапазоне от 1 до 20']); // вернёт объект { code: 400, message: '', detail: ['page не указано', 'limit должен быть в диапазоне от 1 до 20'] } createError(400, 'Неправильный запрос', ['page не указано', 'limit должен быть в диапазоне от 1 до 20']); // вернёт объект { code: 400, message: 'Неправильный запрос', detail: ['page не указано', 'limit должен быть в диапазоне от 1 до 20'] } |
Arxi,
:-?
function createError(code, message = '', detail) {
if (Array.isArray(message)) {
detail = message;
message = ''
};
return Array.isArray(detail) ? {
code,
message,
detail
} : {
code,
message
}
}
console.log(createError(404));
// вернёт объект { code: 404, message: '' }
console.log(createError(400, 'Неправильный запрос'));
// вернёт объект { code: 400, message: 'Неправильный запрос' }
console.log(createError(400, ['page не указано', 'limit должен быть в диапазоне от 1 до 20']));
// вернёт объект { code: 400, message: '', detail: ['page не указано', 'limit должен быть в диапазоне от 1 до 20'] }
console.log(createError(400, 'Неправильный запрос', ['page не указано', 'limit должен быть в диапазоне от 1 до 20']));
// вернёт объект { code: 400, message: 'Неправильный запрос', detail: ['page не указано', 'limit должен быть в диапазоне от 1 до 20'] }
|
Огромное спасибо!!!
|
| Часовой пояс GMT +3, время: 11:00. |