主な内容の要点
1. 算術演算子(+、−、×、÷、%、べき乗 **)
- BigInt(長整数リテラル)に対してこれらの算術演算子は使用可能。
- ただし、割り算
/の結果は整数になり、小数部は切り捨てられる(例:7n / 3n→2n)。 - BigInt と通常の数値リテラル(Number 型)との混合演算はできず、型エラーになる(明示的変換が必要)。
2. ビット演算子/シフト演算子
- ビット演算子(AND
&、OR|、XOR^、NOT~)は BigInt に対して利用可能。 - シフト演算子(左シフト
<<、符号付き右シフト>>)も使用できる。 - ただし、符号なし右シフト
>>>は BigInt には使えない(型エラーとなる)。 - また、ビット演算やシフト演算も、BigInt と Number を混ぜて使うことはできない。
3. 等価/不等価演算子(==, !=, ===, !==)
- BigInt 同士の比較で
==/===などは通常通り使える。 ==は型をまたいで BigInt と Number を比較でき、値が同じなら真(true)となる(例:54 == 54n→true)。===は型も比較するため、BigInt と Number を比較すると偽(false)になる(例:54 === 54n→false)。
4. 関係演算子(<, <=, >, >=)
- BigInt に対して
<, <=, >, >=を使って大小比較できる。 - これらの比較演算子は、BigInt と Number を混ぜても比較できる(数値として比較)。
5. インクリメント/デクリメント演算子(++, –)
- BigInt に対して
++、--が使える。 - 例:
let num = 15n;
num++;
console.log(num);
>> 16n
--num;
console.log(num);
>> 15nJavaScript6. 単項演算子(+、−)
- 単項マイナス(−) は BigInt に対して使え、符号を反転できる(例:
-15n→-15n)。 - 単項プラス(+) は BigInt に対して使えない。BigInt を Number に変換しようとするため、型エラーになる(例:
+15n→ TypeError)。

