본문 바로가기
프로그래밍/타입스크립트

타입스크립트 - 함수 타입

by Programmer.Junny 2025. 2. 14.

기본 함수

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

타입스크립트는 함수의 매개변수에 정확한 타입을 지정해주어야 한다.

반환값은 타입스크립트가 추론할 수 있으므로, 생략이 가능하다.

const add = (a: number, b: number) => a + b;

화살표함수 또한 마찬가지이다.

선택적 매개변수

function introduce(name = 'junny', tall?: number) {
    console.log(`name : ${name}`);

    if (typeof tall === 'number') {
        console.log(`tall : ${tall + 10}`);
    }
}

introduce('junny', 180);	//junny, 190 출력
introduce('junny');	//junny만 출력
introduce();	//junny만 출력

함수에서 기본값을 할당 시 선택적 매개변수가 된다. 선택적 매개변수일 경우에는 생략이 가능하다.

또한 ? 키워드를 붙여 선택적 매개변수를 만들 수 있다. 마찬가지로 이런 경우에도 생략이 가능하다.

rest 매개변수

function getSum(...rest: number[]) {
    let sum = 0;
    rest.forEach((t) => (sum += t));

    return sum;
}

getSum(1, 2, 3);    //6출력
getSum(4, 5, 6, 7); //22출력

자바스크립트에서 있듯 타입스크립트에서도 rest 매개변수를 사용할 수 있다.

마찬가지로 매개변수에 타입을 설정해야 한다.

function getTupleSum(...rest: [number, number, number]) {
    let sum = 0;
    rest.forEach((t) => (sum += t));

    console.log(sum);
    return sum;
}

getTupleSum(3, 3, 3);   //6출력
//getTupleSum(3, 3, 3, 4);      //튜플에 맞지않으므로 에러!

튜플도 설정이 가능하다.

최근댓글

최근글

skin by © 2024 ttuttak