Leocat Lab

Утилиты / заметки об устройстве

URL, JSON и время.

Три инструмента для повседневной разработки. Всё вычисляется в браузере: введённые данные не отправляются на сервер.

Разобрать адрес

Протокол, хост, путь и параметры запроса. Повторяющиеся параметры остаются отдельными строками.

Укажите протокол, например https://. Инструмент не открывает адрес.

Почему «+» в запросе превращается в пробел?

Форматирование JSON

Проверка синтаксиса и отступы. Числа, порядок ключей и строковые значения сохраняются.

До 100 000 символов и 64 уровней вложенности. Комментарии и запятые в конце не допускаются.

Как не округлить длинное число при форматировании?

Конвертер Unix-времени

Перевод метки времени в дату и обратно. Единицы задаются явно, а дата должна содержать часовой пояс.

В секундах допустимы три знака после точки или запятой. Миллисекунды — целое число.

Например, 2026-11-07T03:00:00+03:00. Z обозначает UTC.

Почему единицы времени нельзя угадывать по длине?

Заметки об устройстве

Три детали, от которых зависит результат.

URL: одинаковые ключи и знак «+»

В адресе ?tag=linux&tag=docker два значения одного параметра. Если собрать запрос в обычный объект по ключам, одно из них можно потерять. Здесь параметры выводятся по порядку, отдельными строками.

При чтении через URLSearchParams знак + превращается в пробел. Для буквального плюса нужен %2B. Поэтому ?q=C%2B%2B даёт «C++», а ?q=C++ — букву C и два пробела.

Разбор выполняет браузерный URL: он нормализует адрес, например регистр имени хоста и стандартный порт. Это синтаксическая проверка. Доступность адреса и ответы сервера не проверяются.

JSON: форматирование без потери цифр

Число 9007199254740993 выходит за пределы точного представления целых в JavaScript Number. При обычном разборе в объекты и обратной сериализации оно может превратиться в 9007199254740992.

Этот инструмент проверяет грамматику JSON и меняет только пробельные символы между элементами. Числа не преобразуются в Number; строки, экранирование и даже повторяющиеся ключи остаются в исходном виде.

Форматирование не проверяет схему документа и не определяет, что приложение сделает с повторяющимися ключами. Ограничения длины и вложенности нужны, чтобы большой ввод не занимал браузер надолго.

Время: секунды, миллисекунды и часовой пояс

Unix-метка отсчитывается от 1970-01-01T00:00:00Z. Значение 1000 в секундах означает 00:16:40 UTC, а в миллисекундах — 00:00:01 UTC того же дня. По количеству цифр нельзя надёжно выбрать единицу, особенно для старых дат.

У числовой метки нет локального часового пояса. Он нужен при отображении даты. Здесь результат показан в UTC и в часовом поясе браузера; этот пояс подписан отдельно.

Для обратного преобразования принимается дата вида 2026-11-07T03:00:00+03:00 или с Z. Дата без смещения отклоняется. Отрицательные метки поддерживаются, точность — до миллисекунды; секунды координации не поддерживаются.

О Leocat Lab

Небольшие инструменты для работы с адресами, конфигурациями и логами. Введённые данные обрабатываются в текущей вкладке и не записываются в хранилище сайта. Между посещениями сохраняется только выбранная тема.

К инструментам ↑