728x90
728x90
코드 품질을 높여주는 tsconfig.json 설정
들어가며
- TypeScript의 설정 파일(@tsconfig.json@)에서 코드의 품질을 높여주는 몇 가지 설정 항목에 대해 간단히 정리해본다.

설정
① noUnusedLocals
- 사용되지 않는 지역 변수(local variable)를 검사해서 에러를 발생시키는 옵션
- 선언만 해놓고 안 쓰는 변수를 잡아내주는 옵션
예시 코드
- 지역 변수 @b@는 사용되지 않으므로, 에러가 발생한다.
function example() {
const a = 10;
const b = 20; // 사용되지 않음
return a;
}
② noUnusedParameters
- 사용되지 않는 함수 파라미터(Parameter)를 검사한다.
- 불필요한 API 설계를 방지하고, 함수 시그니처를 명확하게 해주도록 도와준다.
예시 코드
- @age@ 파라미터는 사용되지 않으므로, 에러가 발생한다.
function greet(name: string, age: number) {
return `Hello ${name}`;
}
- @_@ 접두어(Prefix)를 함수 파라미터 앞에 붙이면, 의도적으로 사용 하지 않는 파라미터임을 표현할 수 있다.
function handler(_req: any, res: any) {
res.send("ok");
}
③ noFallthroughCaseInSwitch
- @switch@ 문에서 @break@, @return@ 없이 다음 @case@로 자동으로 넘어가는(fallthrough) 것을 방지해준다.
- 의도하지 않은 버그를 방지해주고, 로직 흐름이 명확해지도록 도와준다.
예시 코드
- @case 1@에서 @break@가 존재하지 않으므로, 에러가 발생한다.
function getColor(code: number) {
switch (code) {
case 1:
console.log("red");
case 2:
console.log("blue");
break;
}
}
- 의도적으로 fallthrough를 하려면, 주석(Comment)으로 의도를 명시해주는 것이 좋다.
switch (code) {
case 1:
console.log("red");
// fallthrough
case 2:
console.log("blue");
}
정리
tsconfig.json
{
"noUnusedLocals": true, // 사용하지 않는 로컬 변수 감지
"noUnusedParameters": true, // 사용하지 않는 함수 파라미터 감지
"noFallthroughCasesInSwitch": true // break 또는 return이 없는 switch 문 감지
}
참고 사이트
Documentation - What is a tsconfig.json
Learn about how a TSConfig works
www.typescriptlang.org
728x90
728x90
'Programming > TypeScript' 카테고리의 다른 글
| [TypeScript] 환경 변수 타입 설정하기 (3) | 2024.12.09 |
|---|---|
| [TypeScript] 클래스(Class) (0) | 2024.10.12 |
| [TypeScript] 제네릭(Generic) (0) | 2024.10.12 |
| [TypeScript] 인터페이스(Interface) (0) | 2024.10.12 |
| [TypeScript] Zod 라이브러리 (0) | 2024.10.11 |
| [TypeScript] 타입 가드(Type Guard) (0) | 2024.10.10 |
| [TypeScript] 모듈 방식 사용하기 (0) | 2024.10.10 |
| [TypeScript] 인터페이스(Interface)와 타입 별칭(Type Alias) 비교 (0) | 2024.10.09 |
