타입스크립트는 변수만들 때 변수의 타입을 지정가능
변수명:타입
자주 쓰는 primitive types에는 string, number, boolean 이런게 있음
추가로 null, undefined 이런 것도 있으나, 굳이 사용하진 않음
let 회원들 :string[] = ['kim', 'park']
array
자료안에 들어갈 타입은 타입명[] 이렇게 지정
Q. array 안에 string, number 이런게 동시에 들어갈 땐 타입지정 어떻게 함?
변수명: (string | number)[]
let 내정보 : { age : number } = { age : 20 }
object
자료안에 들어갈 타입은 내가 만들 object와 똑같은 모습으로 지정
뭔가 이상해보이지만 변수명 오른쪽에 오는 것들은 전부 타입지정 문법임
타입을 잘 지정해준다면 타입이 실수로 변경될 때 이런 경고성 에러가 남
Type 'number' is not assignable to type 'string'.(2322)
물론 이 에러는 ts에서만 나는 에러고 실제 변환된 .js 파일 가보면 별일없음
변수 생성시 타입스크립트가 타입을 자동으로 부여해줌
let 이름 = 'kim';
let 나이 = 20;
이렇게만 써도 자동으로 이름변수는 string, 나이 변수는 number를 가지고 있음
(변수명에 마우스 올려보면 바로바로 확인가능)
array, object 만들 때도 자동으로 알아서 되므로, 굳이 복잡하게 타입 명시할 필요 없음
let 이름;
이름 = 'kim';
심지어 변수만 만들고
나중에 가서 여기에 'kim'을 할당해도 타입이 자동으로 string으로 변함
=> 간단한 변수들은 타입을 생략하자
팁) 에러메세지는 tsc -w 명령어 실행중인 터미널에 나옴
간결하게 보려면 terminal 탭 옆에 problems 탭에도 나옴