Notice
Recent Posts
Recent Comments
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Link
관리 메뉴

개발블로그

TypeScript 기본문법 본문

TypeScript

TypeScript 기본문법

춘식스 2022. 5. 26. 15:48

기본타입

타입스크립트는 다양한 기본 타입을 제공한다.
Boolean, Number, String, Object, Array, Tuple, Enum, Any, Void, Null, Undefined, Never

문자열

let car: string = 'bmw';
let car2 = 'bmw';
  • 'bmw'가 문자열이기 때문에 :string를 따로 안적어줘도 문자열로 인식한다.
  • 이것을 타입 추론이라고한다.

숫자

let age: number = 30;
let age2 = 30;

불리언 타입

let isAdult: boolean = true;
let isAdult2 = true;

배열 타입(숫자)

let a: number[] = [1, 2, 3];
let a2: Array<number> = [1, 2, 3];
let a3 = [1, 2, 3];

배열 타입(문자열)

let week: string[] = ['mon', 'tue', 'wed'];
let week2: Array<string> = ['mon', 'tue', 'wed'];
let week3 = ['mon', 'tue', 'wed'];

튜플 (Tuple)

배열 안에 각각 다른 타입을 사용하고 싶을 때 사용
let b: [string, number];
b = ['z', 1];
// b = [1, 'z']; // Error
b[0].toLowerCase();
  • toLowerCase() = 단어에 첫번째 글자를 소문자로 바꿔주는것
  • 첫번째가 문자열이기 때문에 첫번째만 사용가능

void, never

void = 값을 반환하는게 없을 때
never = 일부러 에러를 내거나, 끝나지 않는 함수를 사용할 때
// void
function sayHello(): void{
  console.log('hello');
}

// never
function showError(): never{
  throw new Error();
}

function infLoop(): never{
  while (true) {
    // do something..
  }
}

enum

비슷한 값들끼리 묶어줬다고 생각하면 된다.
특정 값만 입력할 수 있게 강조하고 싶을 때
그 값들이 공통점이 있을 때 사용한다.
enum Os {
  Window,
  Ios,
  Android
}

// 숫자열이 아닌 문자열도 넣어줄 수 있다.
enum Os {
  Window2 = 'Win',
  Ios2 = 'ios',
  Android2 = 'and'
}
// 숫자가 아니기때문에 단방향 맵핑만 가능

null, undefined

let a4: null = null;
let b1: undefined = undefined;

Error

let count = 0;
count += 1;
count = '갑자기 분위기 문자열'; // 이렇게 적으면 에러가 난다.
// error TS2322: Type 'string' is not assignable to type 'number'.

const messages: string[]= ['hello', 'world']; // 문자열 배열

messages.push(1); // 문자열 배열에 숫자를 넣으면 안됨

let color: 'red' | 'orange' | 'yellow' = 'red'; // red, orange, yellow 중 하나
color = 'yellow';
color = 'green'; // Error

Error

'TypeScript' 카테고리의 다른 글

TypeScript - Type Alias  (0) 2022.05.27
TypeScript - Interface  (0) 2022.05.26
TypeScript 함수  (0) 2022.05.26
TypeScript 초기설정  (0) 2022.05.24
TypeScript 설명  (0) 2022.05.24
Comments