Omnikit
РазработкаФайлыФинансыВсе инструменты
Ctrl K
Инструменты для разработкиИнструменты для файловФинансовые калькуляторыВсе инструменты
ГлавнаяИнструменты для разработчиковПроверка semver
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Проверка semver

разработка

Проверьте версии на соответствие диапазону npm вроде ^1.2.3, отсортируйте их и узнайте следующую версию

Работает в вашем браузере. Ничего из того, что вы вводите, никуда не отправляется. Проверено 16 октября 2026 г..

Диапазон semver перечисляет версии, которые принимает пакет. В npm ^1.2.3 означает не ниже 1.2.3 и ниже 2.0.0, а ~1.2.3 заканчивается ниже 1.3.0. Ниже версии 1 знак каретки строже, поэтому ^0.2.3 заканчивается ниже 0.3.0. Предварительная версия вроде 1.3.0-beta подходит только под диапазон, в котором указана предварительная версия 1.3.0.

Эта страница переведена машинным способом с английского оригинала. Перевод ещё не проверен человеком, поэтому ориентируйтесь на английскую версию. Читать английский оригинал

Дальше:
  • Валидатор package.json Проверка package.json так, как его читает npm: имя, версия, лицензия, зависимости и синтаксис
  • Проверка Conventional Commits Проверьте сообщение коммита по Conventional Commits и commitlint и узнайте, какое повышение версии оно даёт

Как проверить, подходит ли версия под диапазон semver

1

Введите диапазон из package.json, например ^1.2.3 или >=18 <21, в поле Диапазон.

2

Вставьте версии для проверки, по одной на строку, или нажмите Попробовать пример.

3

Изучите список: каждая версия отмечена как подходящая или нет, отсортирована по возрастанию, а наибольшая подходящая версия названа отдельно.

4

Нажмите Копировать, чтобы взять отсортированный список, или Копировать подходящие, чтобы взять только версии из диапазона.

О проверке semver

Semantic Versioning записывает релиз как MAJOR.MINOR.PATCH: мажорное изменение может сломать код, который его использует, минорное добавляет возможности, а патч только исправляет ошибки. Менеджеры пакетов полагаются на это обещание, когда читают диапазон вроде ^1.2.3 в package.json и выбирают самую новую подходящую версию.

Введите диапазон и вставьте версии, по одной на строку. Каждая версия отмечается как входящая в диапазон или нет, список сортируется в настоящем порядке версий, а наибольшая и наименьшая подходящие версии называются. Диапазон также записывается простыми сравнениями, точно так же, как его выводит npm, поэтому ^0.2.3 отображается как >=0.2.3 <0.3.0-0.

Диапазон Означает Пример подходящей версии
^1.2.3 >=1.2.3 <2.0.0 1.9.4
^0.2.3 >=0.2.3 <0.3.0 0.2.9
~1.2.3 >=1.2.3 <1.3.0 1.2.10
1.x >=1.0.0 <2.0.0 1.4.0
1.2.3 - 2.3 >=1.2.3 <2.4.0 2.3.9
>=18 <21 от 18.0.0 и ниже 21.0.0 20.11.1

Порядок. Числа сравниваются как числа, поэтому 1.10.0 новее, чем 1.9.0. Предварительная версия стоит ниже своего релиза: 2.0.0-rc.1 идёт перед 2.0.0. Внутри предварительной версии числовые части сравниваются как числа и стоят перед словами, поэтому beta.2 ниже beta.11, а 1 ниже alpha. Метаданные сборки после знака плюс никогда не меняют порядок.

Ошибки с объяснением. Для строки, которая не является версией, указана причина: в 1.2 нет номера патча, у 01.2.3 ведущий ноль, а у 1.2.3.4 лишняя часть. Если исправление очевидно, оно предлагается.

Следующие версии. Для наибольшей версии в списке показаны следующая мажорная, минорная, патч- и предварительная версия, так, как их записала бы команда npm version.

Каждый ответ сверяется с node-semver, библиотекой, которую использует сам npm, на более чем 3 000 сравнений и 100 диапазонах. Всё работает в вашем браузере; ничего из вставленного вами никуда не отправляется.

Частые вопросы

Чем тильда отличается от каретки в package.json?

Тильда разрешает только обновления патча: ~1.2.3 принимает 1.2.4 и 1.2.10, но не 1.3.0. Каретка разрешает и минорные обновления: ^1.2.3 принимает всё ниже 2.0.0. Поскольку npm по умолчанию пишет каретку, большинство проектов получают новые возможности автоматически и останавливаются только на следующей мажорной версии.

Почему ^0.2.3 не разрешает версию 0.3.0?

Ниже 1.0.0 npm считает мажорной версией первое ненулевое число, потому что API ещё не стабилен. Поэтому ^0.2.3 означает не ниже 0.2.3 и ниже 0.3.0, а ^0.0.3 разрешает только саму 0.0.3. Именно переход пакета на 1.0.0 включает более широкий диапазон каретки.

Версия 1.10.0 новее, чем 1.9.0?

Да. Каждая часть семантической версии сравнивается как целое число, поэтому минорная версия 10 больше 9. Если сортировать номера версий как текст или читать их как десятичные дроби, 1.10.0 окажется перед 1.9.0, а это неверно. Вставьте обе версии сюда, чтобы увидеть правильный порядок и то, какая часть отличается.

Подходит ли предварительная версия вроде 2.0.0-beta.1 под ^1.0.0?

Нет. Предварительная версия подходит только под диапазон, в котором указана предварительная версия с теми же мажорным, минорным номером и номером патча. Поэтому 1.3.0-beta подходит под >=1.3.0-alpha, но не под ^1.2.3, хотя при сортировке оказывается внутри этого диапазона. Предварительные версии не попадают в обычную установку, если вы их не запросите.

Как упорядочиваются предварительные версии?

Предварительная версия идёт перед своим релизом, поэтому 1.0.0-rc.1 старше, чем 1.0.0. Части предварительной версии сравниваются по одной, через точку: числа как числа, слова по алфавиту, а числа перед словами. Пример порядка из Semantic Versioning: alpha, alpha.1, alpha.beta, beta, beta.2, beta.11, rc.1, затем релиз.

Что означает знак плюс в версии?

Всё после знака плюс — это метаданные сборки, например 1.0.0+20261016 или 1.0.0+sha.5114f85. Метаданные сборки обозначают конкретную сборку, но при упорядочивании игнорируются, поэтому 1.0.0+a и 1.0.0+b считаются одной и той же версией. Диапазоны их тоже игнорируют, а npm отбрасывает их при выводе диапазона.

Источники

  • Semantic Versioning 2.0.0 (semver.org)Version format, pre-release and build metadata, and precedence (section 11)
  • node-semver README, Ranges and Advanced Range Syntax (npm)Caret, tilde, X-ranges, hyphen ranges, || and the pre-release rule
  • npm Docs, npm versionHow major, minor, patch and prerelease bumps are written

Последняя проверка: 16 октября 2026 г..

Ставки и правила меняются; проверьте источник, прежде чем полагаться на цифру.

Всё ещё не получается? Задайте вопрос об инструменте «Проверка semver» и ответить может любой, кто знает. Учётная запись не нужна.

Похожие инструменты

Все инструменты для разработчиков
Тестер регулярных выраженийПроверка регулярных выражений JavaScript с подсветкой на лету и объяснением простым языкомСравнение текстовСравните два текста бок о бок и увидьте каждую добавленную и удалённую строкуСравнение JSONСравните два документа JSON и получите каждое добавленное, удалённое и изменённое значениеПредпросмотр Open GraphВставьте страницу и посмотрите карточку для Facebook, LinkedIn, X, WhatsApp и SlackПлотность ключевых слов и читаемостьПодсчёт слов и фраз, плотность, время чтения и индекс удобочитаемости ФлешаКоды состояния HTTPВсе коды состояния HTTP: что они значат, когда их отправлять и из какого RFC они взятыПарсер User-AgentРазберите строку User-Agent: браузер, движок, ОС, тип устройства и бот ли этоТестер JSONPathВыполняйте запросы JSONPath по RFC 9535 к вставленному JSON и смотрите каждое совпадение с подсветкой
Был ли этот инструмент полезен?
Omnikit

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

Файлы

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Разработка

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Финансы

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
РуководстваВопросыО сайтеКак мы проверяемБиблиотека законов (бета)КонфиденциальностьУсловияРаскрытие информацииКонтактыMore: Exam practice (UGC NET Paper 1)Работает в вашем браузере. Ничего не загружается на сервер. © 2026 Omnikit (theomnikit.com)