Décalage binaire à gauche (<<)

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.

L'opérateur de décalage binaire à gauche (<<) décale la séquence de bits représentée par le premier opérande d'autant de bits vers la gauche que le nombre indiqué par le second opérande. Les bits en excès à gauche sont écartés et des bits à zéro sont introduits à droite.

Exemple interactif

const a = 5; // 00000000000000000000000000000101 const b = 2; // 00000000000000000000000000000010 console.log(a << b); // 00000000000000000000000000010100 // Expected output: 20 

Syntaxe

js
a << b; 

Description

Cet opérateur décale les bits du premier opérande vers la gauche, d'autant que le nombre indiqué par le second opérande. Les bits qui dépassent à gauche sont abandonnés et des zéros sont introduits à droite.

Ainsi, 9 << 2 donnera la valeur 36 (en base 10) :

js
 9 (base 10): 00000000000000000000000000001001 (base 2) -------------------------------- 9 << 2 (base 10): 00000000000000000000000000100100 (base 2) = 36 (base 10) 

Le décalage binaire de tout nombre x de y bits vers la gauche donnera comme résultat x * 2 ** y. Par exemple, 9 << 3 pourra être reformulé en 9 * (2 ** 3) = 9 * (8) = 72.

Exemples

Utiliser le décalage binaire à gauche

js
9 << 3; // 72 // 9 * (2 ** 3) = 9 * (8) = 72 

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-left-shift-operator

Compatibilité des navigateurs

Voir aussi