TypeScript를 사용하는 가장 큰 이유는 타입 안정성 때문
=> 코드에 버그가 매우 많이 줄어듦, 런타임 에러가 줄어듦, 생산성 증가
JavaScript는 타입 안정성이 없는 언어임
JavaScript는 매우 유연한 언어라, 개발자가 멍청한 코드를 짜도 이해하려고 함
즉, 에러를 띄우지 않으려고 함
1.
[1, 2, 3, 4] + false
> '1,2,3,4,false'
# boolean 타입인 false가 그냥 string이 돼버림, JavaScript는 이를 허용
2.
function divide(a, b) {
return a/b
}
divide("xxxx")
> NaN
# 코드를 실행하고 NaN를 리턴함, JavaScript는 함수를 올바르게 사용하도록 강제하지 않음
3.
const nico = { name:"nico"}
nico.hello()
> Uncaught TypeError: nico.hello is ..... not a function ....
# 함수가 없는 객체에서 함수를 호출했음에도 코드를 '실행'함, 이상적으로는 코드 실행 전 함수가 없다는 것을 알려주는 것임
JavaScript는 코드를 실행한 뒤에야 에러를 찾아낼 수 있음
TypeScript는 이런 단점을 보완하고, 타입 추론을 통해 개발자에게 보호 장치를 제공함
'Web > TypeScript' 카테고리의 다른 글
[TypeScript] Interfaces (0) | 2024.07.07 |
---|---|
[TypeScript] 객체지향 - Classes (0) | 2024.07.05 |
[TypeScript] 다형성(Polymorphism) (0) | 2024.07.05 |
[TypeScript] 기본 문법 - 함수 (1) | 2024.07.05 |
[TypeScript] 기본 문법 - Type (1) | 2024.07.04 |