Це залежить від реалізації, але це було б дуже, дуже малоймовірно .
Я визнаю, що я не читав деталі реалізації різних двигунів браузера, і CSS не визначає конкретного типу зберігання для чисел. Але я вважаю, що можна припустити, що всі основні браузери використовують 64-бітні числа з плаваючою комою з подвійною точністю ("подвійні", щоб запозичити термін з C / C ++) для обробки більшості своїх числових потреб у CSS , тому що це те, що JavaScript використовує для чисел, і тому використання одного типу полегшує інтеграцію.
З точки зору комп'ютера, всі парні несуть однаковий об'єм даних: 64 біта, будь-яке значення 1 або -3,14, або 1000000, або 1e100 . Кількість часу, необхідного для здійснення операцій над цими номерами, не залежить від фактичного значення цих чисел, оскільки воно завжди працює на однаковій кількості даних. Існує компроміс у тому, щоб робити речі таким чином, оскільки парні не можуть точно представити всі числа (або навіть усі числа в межах їх діапазону), але вони можуть наблизитися досить для більшості питань, і види речей, які робить CSS, не є чисельними -вимагаючи достатньо, щоб потребувати більшої точності, ніж це. Поєднайте це з перевагами прямої сумісності з JavaScript, і у вас є досить вагомий випадок для пар.
Не неможливо, що хтось може реалізувати CSS, використовуючи кодування змінної довжини для чисел. Якщо хтось використовував кодування змінної довжини, то порівняння з невеликими числами було б менш дорогим, ніж порівняння з великими числами, оскільки великі числа мають більше даних для стискання . Ці види кодувань можуть бути більш точними, ніж двійкові, але вони також набагато повільніше, а для CSS, зокрема, підвищення точності, ймовірно, недостатньо, щоб бути вагомим показником. Я був би дуже здивований, дізнавшись, що будь-який браузер робив такі дії.
Тепер, теоретично, є один можливий виняток із усього, що я говорив вище: порівняння проти нуля часто швидше, ніж порівняння з іншими числами . Це не тому, що нуль короткий (якщо це було причиною, то 1 має бути так само швидко, але це не так). Це тому, що нуль дозволяє обманювати. Це єдине число, де всі біти вимкнено, тому, якщо ви знаєте, що одне із значень дорівнює нулю, вам навіть не потрібно дивитися на інше значення як на число: якщо будь-який з бітів на ньому, то він не дорівнює нуль, і тоді вам потрібно лише подивитися один біт, щоб побачити, чи більший він або менший від нуля.