This page was translated from English by the community.Learn more and join the MDN Web Docs community.
Math.clz32()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
Сводка
МетодMath.clz32() возвращает количество ведущих нулевых битов в 32-битном двоичном представлении числа.
In this article
Синтаксис
Math.clz32(x)
Параметры
xЧисло.
Описание
Названиеclz32 является сокращением для более длинногоCountLeadingZeroes32 (ПосчтитатьВедущиеНули32).
Если значениеx не является числом, оно будет сначала преобразовано в число, а потом в 32-битное беззнаковое целое число.
Если преобразованное 32-битное беззнаковое целое число равно0, метод вернёт32, поскольку все биты в числе равны0.
Этот метод особенно полезен для систем, которые компилируются в JS, например, дляEmscripten.
Примеры
>Пример: использование методаMath.clz32()
Math.clz32(1); // 31Math.clz32(1000); // 22Math.clz32(); // 32[NaN, Infinity, -Infinity, 0, -0, null, undefined, "foo", {}, []].filter( function (n) { return Math.clz32(n) !== 32; },); // []Math.clz32(true); // 31Math.clz32(3.5); // 30Полифил
Math.clz32 = Math.clz32 || function (value) { value = Number(value) >>> 0; return value !== 0 ? 31 - Math.floor(Math.log(value + 0.5) / Math.log(2)) : 32; };Спецификации
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-math.clz32> |