Код Middle Разминка: короткие функции обновлено
withDefaults
Условие
Верни объект, где отсутствующие или undefined поля взяты из defaults. Значения null и 0 не подменяются.
Что проверяют тесты
подставляет отсутствующее
ноль не подменяется
undefined подменяется
null сохраняется
Как подойти
Спред {...defaults, ...obj} сломается на явном undefined в obj - оно перезапишет дефолт. Поэтому цикл с проверкой на undefined. Ровно та же логика у параметров функции по умолчанию.
Подсказки: 1
- Только undefined означает «значения нет».
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.