unicorn/no-array-reverse 의심스러운
작동 방식
Array#reverse() 대신 Array#toReversed()를 사용하는 것을 권장합니다.
왜 문제인가요?
Array#reverse()는 원본 배열을 직접 수정하므로, 코드 내 다른 곳에서 원본 배열이 사용되고 있다면 예기치 않은 부작용이 발생할 수 있습니다.
예시
이 규칙에 위배되는 잘못된 코드 예시:
js
const reversed = [...array].reverse();이 규칙에 부합하는 올바른 코드 예시:
js
const reversed = [...array].toReversed();구성
이 규칙은 다음 속성을 가진 구성 객체를 받습니다:
allowExpressionStatement
type: boolean
기본값: true
이 규칙은 기본적으로 array.reverse()를 표현식 문장으로 허용합니다. false로 설정하면 표현식 문장인 경우에도 Array#reverse() 사용을 금지합니다.
이 옵션이 false로 설정되었을 때 이 규칙에 위배되는 잘못된 코드 예시:
js
array.reverse();사용 방법
이 규칙을 설정 파일 또는 명령줄 인터페이스에서 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"unicorn/no-array-reverse": "error"
}
}bash
oxlint --deny unicorn/no-array-reverse