[Typescript] 함수

Asher Park·2023년 1월 18일
0
post-thumbnail

스파르타코딩클럽 내일배움캠프 Typescript 강의를 들으며 공부한 것을 적은 것입니다.

함수 (Function)

함수는 타입스크립트로 3가지 타입을 정의할 수 있다.

  • 함수의 매개변수 타입
  • 함수의 반환 타입
  • 함수의 구조 타입

Javascript

function sum(a,b) {
  return a+b
}

Typescript

// any
function sum(a,b) {
    return a+b;
}

function sum(a: number, b:number): number {
    return a + b;
}

함수의 인자

  • 함수의 인자를 모두 필수 값으로 간주
  • 매개변수를 설정하면 undefinednull 이라도 넘겨야 한다
  • 정의된 매개변수만 받을 수 있고, 추가로 인자를 받을 수 없다

좀 더 자유로운 자바스크립트의 특성을 살리고 싶다면
? 를 이용해보자!

function sum(a: number, b?: number): number {
  return a + b;
}

sum(3, 5);
sum(3, 5, 7);	// error
sum(3);			// 타입 에러는 발생하지 않음

tsconfig"strictNullCchecks" : true 가 설정되어있으면 오류가 날 수 있다.


REST 문법이 적용된 매개변수

function sum(a: number, ...nums: number[]): number {

}

This

interface Counter {
	count: number;
  	increase(this: Counter): () => {};
}

let timer: Counter = {
	count: 0;
  	increase: function(this: Counter) {
    	return () => {
        	return this.count + 1;
        }
    }
}
profile
배움에는 끝이없다

0개의 댓글