左移 (<<)

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.

左移操作符 (<<) 将第一个操作数向左移动指定位数,左边超出的位数将会被清除,右边将会补零。

尝试一下

语法

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 Language Specification
# sec-left-shift-operator

浏览器兼容性

BCD tables only load in the browser

参见