공유/ESLint
[eslint] switch 문
구하천포
2024. 10. 21. 18:48
switch 문과 관련된 eslint 규칙에 대해 알아보도록 하겠습니다.
최종 규칙을 보여드리면 아래와 같습니다.
하나씩 알아보도록 하겠습니다.
{
"rules": {
"default-case": "error",
"no-fallthrough": "error",
"no-case-declarations": "error",
"consistent-return": "error",
"no-duplicate-case": "error"
}
}
default-case
switch 문에 default 케이스가 존재하도록 강제하는 규칙입니다.
// bad
switch (condition) {
case 1:
break;
}
// good
switch (condition) {
case 1:
break;
default:
break;
}
no-fallthrough
case 문에서 break 없이 다음 case로 넘어가는 것을 방지하는 규칙입니다.
// bad
switch (condition) {
case 1:
case 2:
break;
}
// good
switch (condition) {
case 1:
break;
case 2:
break;
}
no-case-declarations
case 문 안에 변수를 선언할 때 블록을 사용하도록 강제하는 규칙입니다.
// bad
switch (condition) {
case 1:
const name = "name";
break;
}
// good
switch (condition) {
case 1: {
const name = "name";
break;
}
}
consistent-return
case 문에서 반환 값을 일관되게 반환하거나, 반환하지 않도록 하는 규칙입니다.
// bad
switch (condition) {
case "A":
return "a";
case "b":
default:
break;
}
// good
switch (condition) {
case "A":
return "a";
case "b":
return "b";
default:
return "c";
break;
}
no-duplicate-case
동일한 case 문을 작성하지 않도록 하는 규칙입니다.
// bad
switch (a) {
case "A":
return "a";
case "A":
return "A";
default:
return "c";
break;
}
// good
switch (a) {
case "A":
return "a";
case "b":
return "b";
default:
return "c";
break;
}
반응형