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 July 2015.

La fonction Math.clz32() renvoie le nombre de zéros de tête dans la représentation binaire sur 32 bits d'un nombre.

Exemple interactif

Syntaxe

js
Math.clz32(x);

Paramètres

x

Un nombre.

Valeur retournée

Le nombre de bits à zéro en tête de la représentation binaire sur 32 bits du nombre donné.

Description

"clz32" est un raccourci pour CountLeadingZeroes32 (en français, « compter les zéros de tête »).

Si x n'est pas un nombre, il sera d'abord converti en nombre puis converti en un entier non signé sur 32 bits.

Si l'entier non signé sur 32 bits résultant vaut 0, la fonction renverra 32, car tous les bits valent 0.

Cette fonction est particulièrement utile aux systèmes qui compilent du code JavaScript, comme Emscripten.

Exemples

js
Math.clz32(1); // 31
Math.clz32(1000); // 22
Math.clz32(); // 32

var liste = [
  NaN,
  Infinity,
  -Infinity,
  0,
  -0,
  null,
  undefined,
  "machin",
  {},
  [],
];
liste.every((n) => Math.clz32(n) == 32); // true

Math.clz32(true); // 31
Math.clz32(3.5); // 30

Spécifications

Specification
ECMAScript Language Specification
# sec-math.clz32

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi