버전이 올라가면서 뒤늦게 추가된 제약사항들은 기존 프로젝트를 위해서 컴파일시 체크를 하지 않도록 꺼져있다. 컴파일러가 최고 수준으로 코드를 검사하기 원한다면 이 옵션을 켜도록 하자.
2.3 기준으로 --strict 옵션은 --strictNullChecks, --noImplicitAny, --noImplicitThis, --alwaysStrict 옵션들의 합과 같다. false 값을 활용하여 일부 옵션을 해제하는 방법도 사용할 수 있다.
--strict --noImplicitThis false
근데 tsc 2.3 으로 프로젝트 생성하면 (tsc --init) 기본으로 "strict": true 값이 tsconfig.json에 선언 됨
Enhanced --init output
tsc --init 해서 생성되는 tsconfig.json을 보면, 주석이 잘 달려있는 온갖 컴파일러 옵션을 볼 수 있음. 이중 필요한 것을 un주석해서 사용하도록 하자.
Errors in .js files with --checkJs
이 옵션을 사용하면 javascript의 타입 오류도 보고한다고 함. 이 옵션을 켜고, 오류를 확인하지 않을 js 파일에는 // @ts-nocheck 주석을 추가하면 됨.
반대로 --checkJs 옵션을 켜지 않고 // @ts-check 주석을 사용해도 됨.
특정 라인의 코드만 확인을 하지 않는 경우 // @ts-ignore를 사용할 수 있음.
그 외에 javascript에서 실수로 typescript 문법을 사용하지 않는지 검사는 기본으로 해줌.
--strict
master option버전이 올라가면서 뒤늦게 추가된 제약사항들은 기존 프로젝트를 위해서 컴파일시 체크를 하지 않도록 꺼져있다. 컴파일러가 최고 수준으로 코드를 검사하기 원한다면 이 옵션을 켜도록 하자. 2.3 기준으로
--strict
옵션은--strictNullChecks
,--noImplicitAny
,--noImplicitThis
,--alwaysStrict
옵션들의 합과 같다.false
값을 활용하여 일부 옵션을 해제하는 방법도 사용할 수 있다.근데 tsc 2.3 으로 프로젝트 생성하면 (
tsc --init
) 기본으로"strict": true
값이tsconfig.json
에 선언 됨Enhanced --init output
tsc --init
해서 생성되는tsconfig.json
을 보면, 주석이 잘 달려있는 온갖 컴파일러 옵션을 볼 수 있음. 이중 필요한 것을 un주석해서 사용하도록 하자.Errors in .js files with --checkJs
이 옵션을 사용하면
javascript
의 타입 오류도 보고한다고 함. 이 옵션을 켜고, 오류를 확인하지 않을 js 파일에는// @ts-nocheck
주석을 추가하면 됨. 반대로--checkJs
옵션을 켜지 않고// @ts-check
주석을 사용해도 됨. 특정 라인의 코드만 확인을 하지 않는 경우// @ts-ignore
를 사용할 수 있음. 그 외에 javascript에서 실수로 typescript 문법을 사용하지 않는지 검사는 기본으로 해줌.