# no-bitwise

禁止按位运算符

JavaScript 中位运算符的使用非常少见,通常 &| 只是一个错误的 &&||,这将导致意外行为。

var x = y | z;

# 规则详情

此规则不允许按位运算符。

此规则的错误代码示例:

/*eslint no-bitwise: "error"*/

var x = y | z;

var x = y & z;

var x = y ^ z;

var x = ~ z;

var x = y << z;

var x = y >> z;

var x = y >>> z;

x |= y;

x &= y;

x ^= y;

x <<= y;

x >>= y;

x >>>= y;

此规则的正确代码示例:

/*eslint no-bitwise: "error"*/

var x = y || z;

var x = y && z;

var x = y > z;

var x = y < z;

x += y;

# 选项

此规则有一个对象选项:

  • "allow":允许将位运算符列表用作例外。
  • "int32Hint":允许在 |0 模式中使用按位 OR 进行类型转换。

# allow

此规则使用 { "allow": ["~"] } 选项的正确代码示例:

/*eslint no-bitwise: ["error", { "allow": ["~"] }] */

~[1,2,3].indexOf(1) === -1;

# int32Hint

此规则使用 { "int32Hint": true } 选项的正确代码示例:

/*eslint no-bitwise: ["error", { "int32Hint": true }] */

var b = a|0;
Last Updated: 5/13/2023, 8:55:38 PM