Skip to content
← Back to rules

eslint/no-bitwise 제한

작동 방식

비트 연산자 사용을 금지합니다

왜 문제가 될까?

자바스크립트에서 비트 연산자의 사용은 매우 드물며, & 또는 |는 종종 && 또는 ||의 잘못된 타이핑일 수 있습니다. 이는 예기치 않은 동작을 유발할 수 있습니다.

예시

이 규칙에 잘못된 코드 예시:

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[]

기본값: []

allow 옵션은 주어진 비트 연산자 리스트를 이 규칙의 예외로 허용합니다.

예를 들어 { "allow": ["~"] }는 비트 연산자 ~의 사용을 제한 없이 허용합니다. 다음과 같은 경우에 해당됩니다:

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

int32Hint

type: boolean

기본값: false

true로 설정되면 int32Hint 옵션은 타입 캐스팅을 위한 |0 패턴에서 비트 연산자인 |의 사용을 허용합니다.

예를 들어 { "int32Hint": true }로 설정하면 다음 코드가 허용됩니다:

javascript
const b = a | 0;

사용 방법

이 규칙을 구성 파일이나 명령줄 인터페이스를 통해 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "rules": {
    "no-bitwise": "error"
  }
}
bash
oxlint --deny no-bitwise

참고자료