首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

no-bitwise

在JavaScript中使用按位运算符非常罕见,经常&|仅仅是输入错误,&&或者||会导致意外的行为。

代码语言:javascript
复制
var x = y | z;

规则细节

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

此规则的错误代码示例:

代码语言:javascript
复制
/*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;

此规则的正确代码示例:

代码语言:javascript
复制
/*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": ["~"] }选项:

代码语言:javascript
复制
/*eslint no-bitwise: ["error", { "allow": ["~"] }] */

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

int32Hint

此规则的正确代码示例包含以下{ "int32Hint": true }选项:

代码语言:javascript
复制
/*eslint no-bitwise: ["error", { "int32Hint": true }] */

var b = a|0;

版本

这条规则是在ESLint 0.0.2中引入的。

资源

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com