eslint/no-bitwise 制限
何をするか
ビット演算子の使用を禁止する
なぜ悪いのか
JavaScript においてビット演算子を使用することは非常に稀であり、& や | は単に && や || のタイプミスであることが多く、予期しない動作を引き起こす原因となる。
例
このルールに関して 誤り なコードの例:
javascript
var x = y | z;javascript
var x = y ^ z;javascript
var x = y >> z;このルールに関して 正しい コードの例:
javascript
var x = y || z;javascript
var x = y && z;javascript
var x = y > z;設定
このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。
allow
type: string[]
default: []
allow オプションは、指定されたビット演算子のリストをこのルールの例外として許可する。
たとえば { "allow": ["~"] } とすると、~ ビット演算子の使用が制限なく許可される。以下のように利用可能になる:
javascript
~[1, 2, 3].indexOf(1) === -1;int32Hint
type: boolean
default: false
true に設定した場合、int32Hint オプションにより、型変換のために |0 パターンでのビット論理和演算子の使用が許可される。
たとえば { "int32Hint": true } とすると、以下の記述が許可される:
javascript
const b = a | 0;使用方法
設定ファイルまたは CLI でこのルールを 有効化 するには、次のようにする:
json
{
"rules": {
"no-bitwise": "error"
}
}bash
oxlint --deny no-bitwise