Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.10.2022, 14:46
Новичок на форуме
Отправить личное сообщение для Arxi Посмотреть профиль Найти все сообщения от Arxi
 
Регистрация: 11.10.2022
Сообщений: 7

Написать функцию, которая принимает на вход от одного до трёх параметров и возвращает
Добрый день, помогите с задачей, пожалуйста.
Написать функцию, которая принимает на вход от одного до трёх параметров и возвращает объект.(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'] }
Ответить с цитированием
  #2 (permalink)  
Старый 20.10.2022, 18:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

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'] }
Ответить с цитированием
  #3 (permalink)  
Старый 24.10.2022, 22:19
Новичок на форуме
Отправить личное сообщение для Arxi Посмотреть профиль Найти все сообщения от Arxi
 
Регистрация: 11.10.2022
Сообщений: 7

Огромное спасибо!!!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить имя функции внутри функции не используя callee drwhite Общие вопросы Javascript 39 12.02.2020 22:48
Создать функцию которая возвращает случайную букву из всего алфавита Cfifsasaasas Общие вопросы Javascript 1 22.01.2018 00:26
не могу применить функцию которая возвращает текст prog77 Javascript под браузер 8 06.07.2017 14:28
Написать функцию, которая в качестве параметов принимает логическое выражение JaRED Общие вопросы Javascript 9 18.12.2016 10:09
Динамическое создание iframe в Firefox mrbean11 Firefox/Mozilla 8 02.11.2012 21:23