此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
左移 (<<)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
左移操作符 (<<) 将第一个操作数向左移动指定位数,左边超出的位数将会被清除,右边将会补零。
In this article
尝试一下
const a = 5; // 00000000000000000000000000000101const b = 2; // 00000000000000000000000000000010console.log(a << b); // 00000000000000000000000000010100// Expected output: 20语法
a << b
描述
左移操作符将第一个操作数向左移动指定位数,左边超出的位数将会被清除,右边将会补零。
例如,9 << 2 得出 36:
js
9 (十进制): 00000000000000000000000000001001 (二进制) --------------------------------9 << 2 (十进制): 00000000000000000000000000100100 (二进制) = 36 (十进制)移动任意数字x 至左边y 位,得出x * 2 ** y。所以例如:9 << 3 等价于9 * 2³ = 9 * 8 = 72。
示例
>使用左移
js
9 << 3; // 72// 9 * 2³ = 9 * 8 = 72规范
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-left-shift-operator> |