TypeScript Types vs JavaScript Types

박상욱·2022년 4월 4일
0

TypeScript

목록 보기
1/1

ts -> static types

개발하는 중간에 타입을 체크함

js -> dynamic types

개발할때는 알수없고 런타임에 돌입해야지만 잘못된 코드를 확인할 수 있다.

function record(name, grade) {
  if (typeof name !== "string" || typeof grade !== "number") {
    throw new Error("Incorrect input");
  }
  return `name : ${name} grade : ${grade}`;
}
function record(name:string, grade:number) {
    return `name : ${name} grade : ${grade}`;
 }

런타임 체크할필요없이 개발중에 체크할수있기때문에 한 단계 먼저 에러를 확인할 수 있다.

TypeScript의 기본 자료형
-JS의 기본자료형을 포함

  • Boolean (Primitive Type)
  • Number (Primitive Type)
  • String (Primitive Type)
  • Null , Undefined (Primitive Type)
  • Symbol (Primitive Type)
  • Array : object형

Primitive Type

  • object와 reference 형태가 아닌 실제 값을 저장하는 자료형
    • 즉 object와 refernece형태는 실제값을 저장하지 않음.
  • 프리미티브 형의 내장 함수를 사용 가능한 것은 자바스크립트 처리 방식 덕분
  • literal 값으로 Primitive 타입의 서브 타입을 나태낼 수 있다.
    (literal -> 값 그 자체를 문자로 할당하는 방식)
    (서브 타입 -> 3.14 (3.14는 전체 숫자의 서브타입,true (true, false 중의 서브타입))
  • js에서는 래퍼 객체로 만들수있다.(타입스크립트에서는 지향 X) 이건 Prmitive type이 아니다.
new Boolean(false);// typeof new Boolean(false) : 'object'
new String('world');// typeof new String('world') : 'object'
new Number(42);// typeof new Number(42) : 'object'

-프로그래밍을 도울 몇가지 추가적인 타입

  • Any, Void, Never, UnKnown
  • Enum
  • Tuple: object 형
profile
개발자

0개의 댓글