티스토리 뷰

타입스크립트 플레이그라운드

 

타입 정해주기

타입은 : 을 사용해서 옆에 자료형을 적어주면 된다. 배열은 타입을 정해주는 2가지 방법이 있다.

let name : string = 'bong';

let num : number = 1;

let numArr : Array<number> = [1, 2, 3];
// or
let numArr : number[] = [1, 2, 3];

 

튜플 (Tuple)

배열의 형태와 같지만 순서에 따라 타입을 정해 줄 수 있다.

let person[string, number];

// 가능
person = ['bong', 1];

// 불가능
person = [1, 'bong'];

 

void

함수에서 아무것도 반환하지 않을 때 사용

function sayHello () : void {
  console.log('Hello')
}

 

never

에러를 반환하거나 영원히 끝나지 않는 함수에서 사용

function Error() : never {
  throw new Error()
}

function Loop() : never {
  while(true) {
    ...
  }
}

 

enum

자바스크립트에는 없는 자료형

enum Os {
  Ios,
  Android,
  Window
}

 

enum에 값을 할당해주지 않으면 자동으로 0부터 할당됨

enum Os {
  Ios, // 0
  Android, // 1
  Window // 2
}

 

맨 첫 요소에 값을 할당하면 거기에 맞춰서 값이 할당되고 아예 각각 값을 할당하면 해당하는 값이 할당된다.

enum Os {
  Ios = 3, // 3
  Android, // 4
  Window // 5
}
enum Os {
  Ios = 3, // 3
  Android = 10, // 10
  Window // 11
}
enum Os {
    Iso, // 0
    Android = 8, // 8
    Window // 9
}

 

enum은 양방향 매칭이 되어있음

enum Os {
    Iso, // 0
    Android = 8, // 8
    Window // 9
}

// JS
"use strict";
var Os;
(function (Os) {
    Os[Os["Iso"] = 0] = "Iso";
    Os[Os["Android"] = 8] = "Android";
    Os[Os["Window"] = 9] = "Window";
})(Os || (Os = {}));

 

그래서 콘솔에 찍어보면 서로가 나온다.

enum Os {
    Iso,
    Android = 8,
    Window
}

console.log(Os[0]); // 'Iso'
console.log(Os['Iso']); // 0

 

숫자가 아닌 문자열도 입력할 수 있다. 하지만 숫자가 아니라서 단방향 매칭만 된다.

 

특정 값만 입력하게 하고 싶으면서 그 값들이 공통점이 있을 때 enum을 사용하면 된다. 하지만 그렇게 많이 쓰이지는 않음

enum Os {
    Iso = 'iso',
    Android = 'android',
    Window = 'window'
}

let myOs : Os;

myOs = Os.Iso;

 

null, undefined

string이나 number처럼 사용하면 된다.

let a : null = null;
let b : undefined = undefined;
728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
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 29 30 31
글 보관함