Skip to content

Mistrade/mistrade_js_tasks

Repository files navigation

Сборник задач по JS

Доброго времени суток! Данный сборник задач нацелен на оттачивание навыков программирования на JavaScript. Сборник содержит как базовые (простые) задачи, так и более сложные, алгоритмические.

Сборник подготовлен Pre-Senior Frontend-разработчиком в целях обучения и решения реальных задач, которые могут встретиться в коммерческой разработке.

Так же, я занимаюсь ИНДИВИДУАЛЬНЫМ обучением от 0 до Junior+/Middle уровня, с практической помощью в трудоустройстве.

Более подробную информацию вы можете получить написав мне в одном из удобных социальных ресурсов VK/Telegram, ссылки ниже:

Автор сборника: Андрей Черников (Github | ВКонтакте | Telegram)

Тг канал о Frontend-разработке: Черников Андрей - про Frontend и не только

Список задач

  1. Задачи на Массивы
  2. Задачи на Функции
  3. Задачи на Циклы

Для каждой задачи написана документация и тест кейсы (после документации), воспользуйтесь ими, чтобы проверить работоспособность и корректность своего кода к задаче.

Готовые решения можно отправлять сюда.

Использование

Клонирование репозитория и начало работы

Чтобы перенести сборник на свой ПК, воспользуйтесь командами:

git clone https://github.com/Mistrade/mistrade_js_tasks.git #Клонирование репозитория
cd mistrade_js_tasks #переход в корневую папку
npm install #Чтобы установить зависимости (должен быть установлен nodejs, npm)

Как читать документацию?

К каждой задаче написана специальная документация, с детальными описанием, требованиям, входным и выходным данным по задаче. В некоторых задачах встречаются ссылки на дополнительные ресурсы, с которыми (по мнению автора) имеет смысл ознакомиться, для решения задачи. Документация задачи начинается с /** символов и заканчивается ниже */, как показано ниже:

/**
 * Описание тегов:
 * @name - указывается имя переменной/функции, к которой написана документация
 * @description - строки начинающиеся с такого тега, содержат описание задачи
 * @param - таким образом помечаются аргументы функции
 * @returns - возвращаемое значение функции
 * @summary - таким тегом помечается ожидаемый результат
 * Если в тегах @param, @returns, @types есть фигурные скобки {}, 
 * то внутри скобок указан тип данных.
 *
 * Пример документации:
 *
 * Задача 5.
 * @description Описание задачи: Напишите функцию, которая возвращает одноуровневый массив, составленный из значений многоуровневого массива.
 * @description Требования: решить задачу без использования методов flat
 * @description Сложность: 3/5
 * @summary Ожидаемый результат: [1, 2, [3, 4, [5]]] => [1, 2, 3, 4, 5]
 *
 * @name flatArray
 * @function
 *
 * @param arr{Array<any>} - входной многоуровневый массив
 * @returns {Array<any>}
 *
 * @description Тренировка (необязательно): Определите алгоритмическую сложность вашего решения.
 * @description Подробнее {@link https://tproger.ru/articles/computational-complexity-explained/ как вычислить алгоритмическую сложность}
 */

const flatArray = (arr) => {
        //код функции
    };

Подробную информацию по работе с документацией JsDoc можно почитать здесь

Happy Hacking!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published