Code Lab

Проверка ответа

ЛёгкаяОшибки7 мин

Напиши класс ValidationError. Он наследует Error, а его name равен 'ValidationError'. Потом напиши функцию readUser(json). Она разбирает строку JSON и возвращает объект пользователя. Если в нём нет поля name или age, брось ValidationError с текстом 'Missing field: name' или 'Missing field: age'. Если строка не JSON, ошибка SyntaxError из JSON.parse уходит дальше как есть.

Примеры

readUser('{"name":"Ann","age":30}')

Вернёт { name: 'Ann', age: 30 }

new ValidationError('Missing field: age').name

Вернёт 'ValidationError'

Источник

Загружаем редактор...
  1. Входные данныеreadUser('{"name":"Ann","age":30}')
    Ожидалось{ name: 'Ann', age: 30 }
  2. Входные данныеreadUser('{"name":"Ann"}')
    ОжидалосьВыбрасывает ValidationError 'Missing field: age'
  3. Брошенная ошибка является ValidationError и Error

Скрытые тесты запускаются по Submit.