Скажем, я использую пакет NPM semver:
const semver = require('semver');
если я сравниваю точную версию с версией тильды / каретки, имеет ли значение, какой аргумент имеет тильду / каретку? Например:
semver.eq('1.2.3', '^1.2');
или
semver.neq('~1.3.3', '1.2.8');
Я предполагаю, что вы можете переключать аргументы без каких-либо изменений, но я не уверен на 100%.





На самом деле semver.eq с такими диапазонами не работает.
semver.satisfies делает, и здесь положение имеет значение:
console.info(semver.satisfies('1.0.0', '^1')) // true
console.info(semver.satisfies('1.2.2', '~1.2.3')) // false
console.info(semver.satisfies('^1.0', '1.0.0')) // Exception
console.info(semver.satisfies('1.2.2', '~1.2.3')) // Exception
console.info(semver.eq('1.0.0', '^1.0.0')) // Exception
console.info(semver.eq('^1.0', '1.2.3')) // Exception
Вот riplссылка, чтобы увидеть
если есть «не удовлетворяет» или мы используем! оператор?
Примерно так прошло: console.info(semver.satisfies('1.2.3', '1.x || >=2.5.0 && !(5.0.0 - 7.2.3)'))
спасибо, да, я полагаю, мое предположение было ошибочным, очень признателен.