2023. 8. 31. 14:43ㆍTypeScript/생활코딩
왜 데이터 타입이 그렇게 중요한가?
JS의 변수에는 어떤 데이터 타입의 값도 할당 될 수 있다.
let myname = 'byein';
string 값이 담겨 있던 변수에 아래처럼 number 값이 담기더라도 에러가 발생하지 않는다.
myname = 1;
JS는 이런 문제를 사전에 막아주지 못하고 나중에 프로그램을 사용하다가 나중에 버그가 있는 걸 발견할 수 있다.
그럼 타입스크립트는 어떻게 이런 문제를 해결할 수 있을까?
변수에 데이터 타입을 지정하는 방법
타입스크립트는 변수 선언 시에 데이터 타입을 지정한다. 그럼 TS를 JS로 컴파일 할 때 다른 값이 할당되면 오류를 발생시켜 알려준다.
let myname: string = 'byein';
myname 변수에 string 타입을 지정했는데 아까처럼 number 타입을 할당하려고 하면 컴파일 에러가 발생하게 된다.
// 아래 코드는 오류를 발생시킵니다.
myname = 1;
데이터 타입의 종류
데이터 타입은 크게 기본 데이터 타입, 객체 타입, 특수 타입으로 나눌 수 있다.
기본 데이터 타입
- number: 숫자 타입으로, 정수와 실수를 포함한다.
- string: 문자열 타입이다.
- boolean: 참(true)과 거짓(false)을 나타내는 불리언 타입이다.
- null: 값이 없음을 나타내는 타입이다.
- undefined: 값이 할당되지 않은 변수의 기본값인 타입이다.
객체 타입
- object: 객체를 나타내는 타입이다.
- array: 동일한 타입의 요소를 가진 배열을 나타내는 타입이다.
- tuple: 각 요소가 다른 타입을 가질 수 있는 배열을 나타내는 타입이다. (TS 전용)
특수 타입
- any: 어떠한 타입이든 할당될 수 있는 타입이다. (TS 전용)
- unknown: 타입을 미리 알 수 없는 경우에 사용되는 타입이다. 이 타입은 안전한 타입 검사를 위해 사용된다. (TS 전용)
- never: 절대 발생하지 않는 값의 타입을 나타낸다. 예를 들어, 함수가 항상 예외를 발생시키거나 무한 루프를 실행할 때 이 타입을 사용할 수 있다. (TS 전용)
타입 추론 기능
타입스크립트는 타입 추론 기능을 통해 변수의 타입을 자동으로 판단할 수 있다. 즉, 명시적으로 타입을 지정하지 않아도 초기에 할당된 값을 바탕으로 타입스크립트 컴파일러가 변수의 타입을 추론한다.
let age = 30;
예를 들어 위의 코드에서 age 변수에 명시적으로 타입을 지정하지는 않았지만, 초기 값인 number 타입이 자동으로 추론된다.
이런 타입 추론은 코드를 간결하게 작성할 수 있도록 도와주지만, 모호한 경우나 복잡한 로직에서는 타입을 명시해주는 것이 좋다.
이렇게 타입스크립트의 데이터 타입을 이용하여 코드의 안정성을 높이고 개발자들이 더 효율적으로 협업할 수 있다.
참고자료
생활코딩 - Typescript
https://opentutorials.org/course/5080
TypeScript - 생활코딩
수업소개 타입스크립트 입문자를 위한 수업입니다. 수업대상 자바스크립트 개발자 버그 위험을 낮추고 싶은 개발자 중요한 기능만 빠르게 배우고 싶은 분 선행학습 이 수업을 듣기 위해서는
opentutorials.org
'TypeScript > 생활코딩' 카테고리의 다른 글
Typescript - 5. TypeScript의 객체 (0) | 2023.08.31 |
---|---|
Typescript - 4. TypeScript의 Array와 Tuple (0) | 2023.08.31 |
Typescript - 2. TypeScript 실습환경 - 내 컴퓨터에서 실행하기 (0) | 2023.08.31 |
Typescript - 1. TypeScript 실습환경 - TS Playground (0) | 2023.08.31 |
Typescript - 0. 소개 (0) | 2023.08.31 |