eslint/max-statements 스타일
작동 방식
함수 내 최대 문장 수를 강제합니다. 이 규칙은 함수가 지정된 문장 수를 초과하지 않도록 보장하여, 유지보수와 이해가 쉬운 더 작고 집중적인 함수를 촉진합니다.
왜 좋지 않은가?
일부 사람들은 큰 함수를 코드 문제의 징후로 여깁니다. 큰 함수는 많은 일을 하며 무엇이 일어나고 있는지 따라가기 어렵게 만들 수 있습니다. 이 규칙을 통해 큰 함수를 피할 수 있습니다.
예시
기본값 { "max": 10 } 옵션으로 틀린 코드 예시:
js
function foo() {
const foo1 = 1;
const foo2 = 2;
const foo3 = 3;
const foo4 = 4;
const foo5 = 5;
const foo6 = 6;
const foo7 = 7;
const foo8 = 8;
const foo9 = 9;
const foo10 = 10;
const foo11 = 11; // 너무 많음.
}
const bar = () => {
const foo1 = 1;
const foo2 = 2;
const foo3 = 3;
const foo4 = 4;
const foo5 = 5;
const foo6 = 6;
const foo7 = 7;
const foo8 = 8;
const foo9 = 9;
const foo10 = 10;
const foo11 = 11; // 너무 많음.
};기본값 { "max": 10 } 옵션으로 올바른 코드 예시:
js
function foo() {
const foo1 = 1;
const foo2 = 2;
const foo3 = 3;
const foo4 = 4;
const foo5 = 5;
const foo6 = 6;
const foo7 = 7;
const foo8 = 8;
const foo9 = 9;
return function () {
// 10
// 내부 함수의 문장 수는 최대 문장 수 계산에 포함되지 않습니다.
let bar;
let baz;
return 42;
};
}
const bar = () => {
const foo1 = 1;
const foo2 = 2;
const foo3 = 3;
const foo4 = 4;
const foo5 = 5;
const foo6 = 6;
const foo7 = 7;
const foo8 = 8;
const foo9 = 9;
return function () {
// 10
// 내부 함수의 문장 수는 최대 문장 수 계산에 포함되지 않습니다.
let bar;
let baz;
return 42;
};
};이 규칙은 클래스 정적 블록에 적용되지 않으며, 클래스 정적 블록 내의 문장은 해당 함수의 문장 수에 포함되지 않습니다.
기본값 { "max": 2 } 옵션으로 올바른 코드 예시:
js
function foo() {
let one;
let two = class {
static {
let three;
let four;
let five;
if (six) {
let seven;
let eight;
let nine;
}
}
};
}기본값 { "max": 10 }, { "ignoreTopLevelFunctions": true } 옵션으로 추가 올바른 코드 예시:
js
function foo() {
const foo1 = 1;
const foo2 = 2;
const foo3 = 3;
const foo4 = 4;
const foo5 = 5;
const foo6 = 6;
const foo7 = 7;
const foo8 = 8;
const foo9 = 9;
const foo10 = 10;
const foo11 = 11;
}구성
이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.
ignoreTopLevelFunctions
type: boolean
기본값: false
상위 수준 함수를 무시할지 여부.
max
type: integer
기본값: 10
함수당 허용되는 최대 문장 수.
사용 방법
설정 파일 또는 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용하세요:
json
{
"rules": {
"max-statements": "error"
}
}bash
oxlint --deny max-statements