А.Пономаренко. Домашние задания к курсам OTUS / Д/З к курсу React.js-2021-09 OTUS / Домашнее задание 6
Заготовки и тесты находятся в репозитории, смотрите ПР https://github.com/nickovchinnikov/react-js-tutorial/pull/25/files
Фикс тестов https://github.com/nickovchinnikov/react-js-tutorial/pull/107
Используя чистые функции массивов map/reduce, объектов Objeсt.keys, строк string.split и т.д. получить нужный результат
Лучшая команда (наибольшее кол-во очков), выводим имя
Querystring из объекта
Объект из querystring
Получить из A -> B не мутируя оригинальный объект
Поменять объект
Поменять массив
Поменять глубокий объект
Бонусное задание: требует прочтения первых 5 глав книги https://github.com/MostlyAdequate/mostly-adequate-guide-ru
Главы на самом деле небольшие
И документации https://ramdajs.com
Напишем compose для поиска имени с наибольшим количеством очков. Вывести нужно только имя!
Напишем compose для создания query string и наоборот - query string -> object
Разработку ведем по TDD, всегда тестируем весь наш код!
Написать свой compose
PASS src/ramdaPureFunctions.test.ts
PASS src/immutability.test.ts
PASS src/pureFunctions.test.ts
-----------------------|---------|----------|---------|---------|-------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
-----------------------|---------|----------|---------|---------|-------------------
All files | 100 | 100 | 100 | 100 |
immutability.ts | 100 | 100 | 100 | 100 |
pureFunctions.ts | 100 | 100 | 100 | 100 |
ramdaPureFunctions.ts | 100 | 100 | 100 | 100 |
-----------------------|---------|----------|---------|---------|-------------------
Test Suites: 3 passed, 3 total
Tests: 9 passed, 9 total
Snapshots: 0 total
Time: 1.189 s
Ran all test suites.