단진
대체로 맑음
단진
  • 분류 전체보기 (162)
    • 개발 (112)
      • 회고 (25)
      • 개발과정 (28)
      • 개념 (14)
      • JavaScript (11)
      • TypeScript (12)
      • 알고리즘 (4)
      • GitHub (4)
      • 오류 (9)
      • TMI (5)
    • 일상 (15)
      • 사진 및 여행 (6)
      • 책 소개 (4)
      • 기타 TMI (5)
    • IT (16)
      • 개념 (5)
      • 데이터베이스 (6)
      • 딥러닝 (1)
      • TMI (4)
    • TMI (4)
      • 법률 TMI (4)
    • 보안 (15)
      • Dreamhack (5)
      • Root Me (10)
hELLO · Designed By 정상우.
단진

대체로 맑음

0. 타입스크립트(TypeScript) - 타입스크립트(TypeScript) 개요
개발/TypeScript

0. 타입스크립트(TypeScript) - 타입스크립트(TypeScript) 개요

2022. 9. 2. 01:24

1. 왜 타입스크립트를 이용하는가?

  • 안정성 때문 (타입 안정성)
  • 타입 안정성 때문에 TS의 장점을 이용할 수 있다 → 코드에 버그가 줄게 된다. 런타임 에러도 줄어든다
  • 결론적으로, 타입 안정성은 TS가 제공하는 최고의 장점

 

2. JavaScript와 비교

  • 매우 유연한 언어 → 이상한 코드를 작성해도 개발자를 이해하고 도와주려 한다
  • 개발자를 이해하려 하고 에러를 보여주지 않으려고 한다
  • 예시 (배열 + Boolean)
[1, 2, 3, 4] + false;

>>> '1, 2, 3, 4false'
  1. 배열이 사라진다
  2. string으로 바뀐다

→ 유효하지 않은 코드지만 JS에서는 허용된다

  • 예시 (함수의 잘못된 입력값)
function divide(a, b) {
	return a / b;
};
divide("xxxxxx");

>>> NaN
  1. 함수에 전달되는 인자는 두개여야 하고
  2. 숫자여야 한다

→ 올바르지 않은 형식과 개수를 입력해도 함수가 실행된다
→ JS는 a와 b가 필수 입력값인지 선택사항인지 전혀 모른다

  • 예시 (런타임 에러 - 콘솔 안에서 일어나는 에러; 유저의 컴퓨터에서 코드가 실행될 때만 일어나는 에러일 수도 있음)
const a = { name: "apple" };
a.hello();

>>> 에러 발생

→ 이것은 코드를 실행하기 전에 최소화시킬 수 있는 에러 중 하나
→ a라는 객체 안에서 존재하지 않는 hello라는 함수를 불러옴
→ 이상적으로는 코드가 실행되기 전에 언어가 자체적으로 해당 객체안에 함수가 없다는 것을 알려주는 것
→ 하지만, JS는 우선 코드를 실행한다. 따라서, 컴파일 단계에서 알 수 없고 코드가 실행되어야 비로소 에러에 대해 알게 된다

3. 결론

TS를 사용하면 위와 같은 오류 및 실수를 방지할 수 있다 → 타입 안정성

'개발 > TypeScript' 카테고리의 다른 글

5. 타입스크립트(TypeScript) - Readonly & Tuple  (0) 2022.09.04
4. 타입스크립트(TypeScript) - Alias(별칭) & return 타입 지정  (0) 2022.09.03
3. 타입스크립트(TypeScript) - 타입(Type)  (0) 2022.09.03
2. 타입스크립트(TypeScript) - 타입 시스템(Type System)  (0) 2022.09.03
1. 타입스크립트(TypeScript) - 타입스크립트(TypeScript)란?  (0) 2022.09.02
    '개발/TypeScript' 카테고리의 다른 글
    • 4. 타입스크립트(TypeScript) - Alias(별칭) & return 타입 지정
    • 3. 타입스크립트(TypeScript) - 타입(Type)
    • 2. 타입스크립트(TypeScript) - 타입 시스템(Type System)
    • 1. 타입스크립트(TypeScript) - 타입스크립트(TypeScript)란?
    단진
    단진

    티스토리툴바