Секундомер (точность до миллисекунды, отметки кругов)
Браузерный секундомер на основе performance.now() для измерений без дрожания. Запуск, пауза, возобновление, запись кругов и сброс. Для каждого круга показывается промежуточное время (разница с предыдущим) и суммарное время.
Как это работает
Почему этот секундомер точный
Большинство браузерных секундомеров используют Date.now() и setInterval, которые могут накапливать погрешность в десятки миллисекунд за сессию. Данная реализация использует performance.now() — монотонные часы, которые не прыгают назад при изменении системного времени. В сочетании с requestAnimationFrame для обновления экрана точность остаётся в пределах ±1 мс.
При переключении вкладок отображаемое время может кратко зависнуть — браузеры ограничивают фоновую активность. Внутренние часы продолжают работать корректно: при возврате на вкладку дисплей догоняет фактическое прошедшее время.
Время кругов и промежуточное время
При нажатии «Круг» записывается текущее суммарное время. Отображаемое промежуточное время — это разница с предыдущим кругом: в беге 5 × 400 м каждое промежуточное время — это время одного отрезка 400 м, а суммарное — прошедшее время с начала.
Большинству пользователей списка кругов важно промежуточное, а не суммарное время. Мы показываем оба. Суммарное время также позволяет легко определить лучший отдельный отрезок — полезно для спортсменов, следящих за равномерностью интервалов.
Типичное применение
Спорт: измерение времени кругов при беге, плавании, велоинтервалах. Меньше — лучше; равномерность промежуточных времён — признак правильного темпа.
Готовка: измерение нескольких этапов одновременно, используя круги как «контрольные точки» (добавлена смесь, начат отдых теста и т.д.).
Учёба/работа: хронометраж сфокусированных рабочих сессий. Сочетайте с таймером Помодоро для структурированных перерывов.
Хронометраж процессов: измерение продолжительности любой задачи — сборки программ, ручного ввода данных, решения обращений. Список кругов удобен для последующего анализа.
Частые вопросы
›Продолжится ли таймер при закрытии вкладки?
Нет — закрытие вкладки очищает состояние в памяти. Для сохранения длительной сессии сделайте скриншот работающего дисплея или скопируйте список кругов перед закрытием.
›Насколько точна точность до миллисекунды на практике?
Разрешение performance.now() зависит от браузера: большинство ограничивает 1 мс или 0,1 мс из соображений безопасности (защита от атак по времени). Для хронометража в масштабе человека этого более чем достаточно — точность значительно превышает время реакции человека (~250 мс).
›Почему экран обновляется 60 раз в секунду, но показывает миллисекунды?
Внутренние часы точны; экран отображается ~60 раз в секунду, обеспечивая плавно обновляющийся дисплей миллисекунд. Каждый кадр вычисляет последнее прошедшее время из performance.now().
›Можно ли сохранить сессию кругов?
Не напрямую — скопируйте список кругов вручную. Сохранение сессий в локальное хранилище запланировано в дорожной карте.
›Чем это отличается от секундомера на телефоне?
Работает в браузере, установка приложения не нужна. Одинаково точен для хронометража в масштабе человека. Секундомер телефона работает при заблокированном экране; браузерная вкладка должна оставаться открытой (но не обязательно активной).
›Данные отправляются куда-либо?
Нет. Всё работает локально; никакие круги и времена не передаются.
›Почему у моего круга 0 миллисекунд?
Если вы нажали «Круг» сразу после «Пуск», прошедшее время может округлиться до 0 при текущей точности дисплея. Подождите хотя бы долю секунды между кругами.
›Может ли это измерять события быстрее секунды?
Да, вплоть до ~1 мс. Для наносекундных измерений (тестирование чипов) нужны другие инструменты, но для любых событий, наблюдаемых человеком, этой точности достаточно.
Похожие инструменты
Обновлено: