자바스크립트의 기능들을 제공하면서 그 위에 자체적인 레이어를 추가함자바스크리트는 string, number, object등의 원시 타입을 가지지만, 일관되게 타입을 할당해주지는 않음타입스크립트는 자바스크립트 코드 위에서 타입을 일관되게 할당해주는 역할을 함타입스크립트는
Type: 어떤 값이 전달될 수 있고, 어떤 값은 실행에 실패할 것임을 설명하는 개념자바스크립트는 동적 타입만을 제공 -> 코드를 실행해야 코드의 동작을 확인할 수 있음자바스크립트로 다음 코드를 실행할 때 3가지 사실을 생각해야 함message는 호출 가능한가?mess
자바스크립트에서 일반적으로 많이 쓰는 원시 타입으로 string, number, boolen이 있음타입스크립트에서도 각각 대응되는 타입이 있으며 타입 이름은 각 타입값에 typeof 연산자를 사용했을 때 얻을 수 있는 이름과 동일함String, Number와 같이 대문
다음과 같은 함수를 살펴보자padding값으로 string, number가 올 수 있는데, repeat 함수는 number만을 받을 수 있기 때문에 타입 검사를 우선 진행해야 한다.자바스크립트의 typeof 연산자를 활용해 타입 체크를 진행하는데, 이는 type gua
화살표 함수와 유사한 방식을 통해 타입 표현 가능매개변수 타입이 지정되지 않으면 암묵적으로 any가 됨자바스크립트에서 함수들은 프로퍼티를 가질 수 있음함수 타입 표현식에서는 프로퍼티 정의가 불가능 하기 때문에 객체 타입에 호출 시그니처를 사용해 표현함함수는 new연산자
객체에서의 속성은 타입, 속성의 optional 여부, 속성의 쓰기 여부를 확인할 수 있음객체에는 선택적으로 가질 수 있는 프로퍼티가 있으며, 이는 이름에 물음표를 추가함으로서 구현 가능Optional Properties가 들어오면 해당 값은 undefined가 들어올
출처: https://www.typescriptlang.org/ko/docs/handbook/2/generics.html
자바스크립트와 동일하게 클래스를 사용가능하며, 타입스크립트에서는 클래스 멤버들의 타입을 추론해줌옵션에서 strictPropertyInitialization을 킬 경우 클래스 멤버들은 constructor에서 초기화 되어야 함Readonly 속성을 사용해 값이 프로퍼티
ES6 모듈과 동일하게 최상위 부분의 import, 또는 export가 있는 것을 모듈로 간주함반대로 import, export 식이 없으면 파일 내 내용은 전역 범위에서 실행됨import, export가 없지만 모듈로 처리하고 싶으면 빈 export 객체 생성 필요모