Type script란?

릭터·2023년 10월 8일
0

TypeScript

목록 보기
1/1

타입 스크립트를 정리 해보려고 합니다.

정리에 앞서 타입 스크립트란??

타입을 명시해서 쓸 수 있는 것으로 쉽게 말해서 타입을 딱 정해 놓고 사용하는 것입니다.

ex)

자바스크립트

```
const a = 3;
const b = '5';
```

타입 스크립트

```
const a:number = 3;
const b:string = '5';
```

js에 없는 타입

type script에는 java script에는 없는 타입들이 있습니다.

1. tuple

배열의 타입 순서와 배열 길이를 지정할 수 있습니다.
 var arr: [number,string] = [123,'abc'];

2. Any

모든 데이터 타입을 허용 합니다.

3. Enum

Number 또는 String 값 집합에 고정된 이름을 부여할 수 있는 타입
기본적으로 0부터 시작 합니다. (1씩 증가)
[값의 종류가 일정한 범위일 경우 유용]
ex)

	enum Animal{
 		Cat='고양이',
         Dog='강아지'
       }

4.Void

변수에는 undefined와 null만 할당하고, 함수에는 리턴 값을 설정할 수 없는 타입 입니다.

5. Never

특정 값이 절대 발생할 수 없을 때 사용


type script에 타입 설정하기

  • 변수에 타입 설정하기
    ex)
	let str: string='글자';
    let num: number=123;

    let arr:Array=[1,2,3];
    let arr2:number[]=[1,2,3];
    let arr3:string[]=['a','b','c'];

    let obj:object={};
    let obj:{ type:string , age:number} ={
    	type:'cat',
        age:1
     };
  • 함수에 타입 설정하기
(선택적 프로퍼티 문법을 사용하는 방법도 있지만 선택적 프로퍼티 문법을 아직 설명하지 않았으므로 생략하겠습니다)
function add(a:number , b:number):number{
	return a+b;

  }

연산자

  • Union 타입
    js의 or 연산자와 같은 의미입니다. (a이거나 b이다)
    ex)

function getText(text: string | number){
		console.log(text);
}

Unoion 타입으로 지정하면 각 타입의 공통된 속성에만 접근 가능합니다.

ex)

interface User{
		name: string;
		age: number;
      }

 interface Worker{
 		name: string;
        dept: dev;
      }

 function findWorkerName(person: User | Worker){
 	person.name; //접근가능
    person.age; //접근 불가
    person.dept; //접근 불가
 }
  • intersection 타입
    js의 and 연산자와 같은 의미입니다. (a이고 b이다)
    각각의 모든 타입이 포함된 객체를 넘기지 않으면 에러 발생합니다.
    ex)
function getWorker(worker: Developer & Person){
}
profile
풀스택 개발자를 꿈 꾸는 릭터입니다.

0개의 댓글