Выбор ответа Middle JSON и JSON Schema обновлено
integer и number
Вопрос
Поле price описано как {"type": "integer"}. Пройдёт ли значение 1500.0?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Да: число с нулевой дробной частью считается integer. Начиная с draft-06 JSON Schema считает 1.0 целым, потому что проверяет математическое значение, а не запись.
Варианты ответа
- Нет: число с точкой в записи считается number, даже если дробь нулевая
- Нет: integer в JSON Schema означает строку из цифр без точки
- Зависит от валидатора: в draft 2020-12 тип integer убрали из стандарта
- Да: число с нулевой дробной частью считается integerправильный ответ
Разбор
Начиная с draft-06 JSON Schema считает 1.0 целым, потому что проверяет математическое значение, а не запись. А вот 1500.5 не пройдёт. Тип integer в JSON Schema есть во всех актуальных версиях, но в самом JSON отдельного целого типа нет: это понятие JSON Schema.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.