oxc/bad-array-method-on-arguments 정확성
작동 방식
이 규칙은 arguments 객체 자체에 배열 메서드가 호출될 때 적용됩니다.
왜 문제인가요?
arguments 객체는 배열이 아니라 배열처럼 보이는 객체입니다. 배열 메서드를 호출하기 전에 실제 배열로 변환해야 합니다. 그렇지 않으면 해당 메서드가 존재하지 않아 TypeError 예외가 발생합니다.
현재 타입 체크 시 이러한 오류를 잡아낼 수 있기 때문에, 순수하게 TypeScript만 사용하는 경우 이 규칙이 필요하지 않을 수 있습니다.
현대적인 자바스크립트에서는 일반적으로 arguments 사용을 피하는 것이 바람직하며, 대신 나머지 매개변수(rest parameters)를 사용하는 것이 좋습니다. 예를 들어 function sum(...args)처럼 작성하세요.
예시
이 규칙에 적절하지 않은 코드 예시:
javascript
function add(x, y) {
return x + y;
}
function sum() {
return arguments.reduce(add, 0);
}이 규칙에 적절한 코드 예시:
javascript
function add(x, y) {
return x + y;
}
function sum(...args) {
return args.reduce(add, 0);
}사용 방법
구성 파일 또는 명령줄 인터페이스를 통해 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"oxc/bad-array-method-on-arguments": "error"
}
}bash
oxlint --deny oxc/bad-array-method-on-arguments