기존의 자바스크립트만 쓰다가 타입스크립트라는 것을 알게되었다..
실무에서도 자바스크립트보다는 타입스크립트를 더 많이 선호한다는데
왜 자바스크립트보다 더 선호하는지 알아보자
Typescript(타입스크립트)?
타입스크립트란 자바스크립트의 타입을 강제시키는 언어라고 할수있다.
예를들어 자바스크립트는
let string = "string"
string = 12345
와 같이 변수에 문자열을 할당했다가 이후에 숫자열을 재할당해도 문제가되지않는다
하지만 타입스크립트는
let string:string = "string"
string = "12345"
변수의 자료형을 지정해주기 때문에 위와같이 문자열 변수에는 문자열만 재할당이 가능하다
타입스크립트를 쓰는 이유
위와 같이 자바스크립트는 타입이 엄격하지 않고 자유자재로 변환이 가능하다.
이러한 점은 개발에는 굉장히 편리해 보이지만, 큰 서비스를 개발하는 경우에는 문제가 될 수 있다.
그리고 타입스크립트는 코드에 목적을 명시하고 목적에 맞지 않는 타입의 변수나 함수들에서 에러를 발생시켜 버그를 사전에 제거하는 이점을 가지고있다
타입스크립트를 쓰는 방법
기본적으로는 변수이름 옆에 ':' 를 붙인 후 타입을 명시해주면된다
let string : string = '반가워요'
let number : number = 1234
이렇게 각 변수에 타입을 지정해준 후 타입에 맞지 않은 값을 할당하면 에러가 난다
// 문자열만 있는 배열
let aaa:string[] = ['하나', '둘', '셋']
// 배열에 문자열과 숫자열을 같이 넣고 싶을때
let bbb:(string | number)[] = [1, 2, 3, "하나", "둘"]
// 모두 숫자이거나 모두 문자인 배열
let ccc: string[] | number[] = ["영희", "철수"]
ccc = [1, 2, 3]
// 객체타입
interface IPropfile {
name : string
age : number
school : string
}
const profile:IPropfile = {
name : "철수"
age : 9
school : "토끼초등학교"
}