Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

左シフト (<<)

BaselineWidely available

左シフト演算子 (<<) は、1 つ目のオペランドを指定されたビット数だけ左にずらします。左にずらしてあふれたビットは廃棄されます。0 のビットが右からずれて入ります。

試してみましょう

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

構文

js
a << b;

解説

この演算子は、1 つ目のオペランドを指定されたビット数だけ左にずらします。左にずらしてあふれたビットは廃棄されます。 0 のビットが右からずれて入ります。

例えば9 << 2 は 36 になります。

js
.    9 (10 進数): 00000000000000000000000000001001 (2 進数)                  --------------------------------9 << 2 (10 進数): 00000000000000000000000000100100 (2 進数) = 36 (10 進数)

任意の数xy ビット分だけ左にビット単位にずらすと、x * 2 ** y になります。ですから、例えば9 << 39 * (2 ** 3) = 9 * (8) = 72 になります。

左シフトの使用

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

仕様書

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

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp