Spec-Zone.ru › ESLint

no-bitwise

Запрет на использование побитовых операторов

Использование побитовых операторов в JavaScript встречается очень редко и часто & или | является просто опечаткой && или ||, что приведёт к неожиданному поведению.

var x = y | z;

Подробности правила

Это правило запрещает использование побитовых операторов.

Примеры некорректного кода для этого правила:

Открыть в Playground
/*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;

Примеры корректного кода для этого правила:

Открыть в Playground
/*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 шаблоне для приведения типов.

allow

Примеры корректного кода для этого правила с параметром { "allow": ["~"] }:

Открыть в Playground
/*eslint no-bitwise: ["error", { "allow": ["~"] }] */

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

int32Hint

Примеры корректного кода для этого правила с параметром { "int32Hint": true }:

Открыть в Playground
/*eslint no-bitwise: ["error", { "int32Hint": true }] */

var b = a|0;

Версия

Это правило было добавлено в ESLint v0.0.2.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/no-bitwise

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API