본문 바로가기

JS/TypeScript

타입스크립트 튜토리얼 타입 (자료형)

타입 시스템은 언어가 지원하는 값의 여러가지 타입을 나타낸다. 타입 시스템은 값들이 프로그램에 의해 저장되거나 다루어지기 전에 제공된 값의 유효한지 검증한다. 이것은 코드가 예상대로 행동하는 것을 보장한다. 타입 시스템은 더 풍부한 코드 hinting과 자동화된 문서를 제공한다.


Any : 모든 데이터 타입의 상위 타입

Built-in types : number, string, boolean, void, null, undefined

User-defined types : Arrays, Enums, Classes, Interfaces


Any Type

any는 타입 스크립트의 모든 타입들의 상위 타입인 데이터 타입이다. 동적 타입을 의미한다. any 타입을 쓰는 것은 변수에 대한 타입 확인을 생략하는 것과 같다.

Built-in Types

Data typeKeywordDescription
Numbernumber

Double precision 64-bit floating point values. It can be used to represent both, integers and fractions.
2배로 정밀한 64비트 부동 소수점 값. 정수와 분수에 사용 가능

Stringstring

Represents a sequence of Unicode characters
유니코드 문자의 나열을 나타낸다. 문자열

Booleanboolean

Represents logical values, true and false
논리적인 값을 나타낸다, true, false

Voidvoid

Used on function return types to represent non-returning functions
반환 값이 없는 함수를 나타내는 함수 반환형에 사용된다.

Nullnull

Represents an intentional absence of an object value.
객체 값의 없음을 의도적으로 나타낸다.

Undefinedundefined

Denotes value given to all uninitialized variables
모든 초기화되지 않은 변수들의 값을 의미한다.

타입 스크립트와 자바 스크립트에는 정수 타입이 없다.


Null과 Undefined

null과 undefined는 둘 다 변수의 데이터 타입을 참조하는 데 사용할 수 없다. 오직 변수의 값으로만 할당할 수 있다.


그러나 null과 undefined는 다르다. undefined로 변수가 초기화된 것은 변수가 값을 갖지 않는다거나 객체가 할당되지 않았다는 것인데 이에 반해 null은 변수가 값이 undefined인 객체로 설정된 것을 의미한다. (undefined는 아예 초기화가 안되어서 값이 없는 것, null은 변수에 undefined를 인위적으로 넣은 것)


User-defined Types

enums, classes, interfaces, arrays, tuple이 있다.


https://www.tutorialspoint.com/typescript/typescript_types.htm