Space
article thumbnail
Published 2023. 8. 12. 14:02
[TS] Function(함수) TypeScript
반응형

Function(함수)

매개변수의 타입과 리턴값의 타입을 명시해야한다. 하지만 리턴값의 타입은 생략할 수도 있다.

● 만약 함수에 리턴값이 없다면, void를 사용하여 작성할 수 있다.

● Typescript는 JavaScript와 달리 매개변수의 갯수에 맞춰 전달인자를 전달해야한다.

    -> 매개변수의 갯수에 맞춰서 전달하지 않으면 Error가 발생한다.

선택적 매개변수를 사용할 경우 매개변수명 끝에 물음표(?)를 붙인다. (fitstName?: string, ...)

● 할당된 매개변수의 값을 정해놓을 수 있다.

반응형
// named function
// 정석
function add(x: number, y: number):number {
	return x + y;
}

// 리턴값 타입 생략형
function add(x: number, y: number) {
	return x + y;
}
// arrow function
// 정석
let add = (x: number, y: number): number => {
	return x + y;
}

// 리턴값 타입 생략형
let add = (x: number, y: number) => {
	return x + y;
}
// 함수에 리턴값이 없는 경우
let printAnswer = (): void => {
	console.log("YES");
}
// Typescript는 JavaScript와 달리 매개변수의 갯수에 맞춰 전달인자를 전달해야한다.
// => 매개변수의 갯수에 맞춰서 전달하지 않으면 Error가 발생한다.
   
let greeting = (firstName: string, lastName: string): string => {
	return `hello, ${firstName} ${lastName}`;
}

// 매개변수 보다 작게 전달한 경우
greeting('coding'); // Error

// 매개변수에 맞게 전달한 경우
greeting('coding', 'kim'); // hello, coding kim

// 매개변수 보다 많이 전달한 경우
greeting('coding', 'kim', 'hacker'); // Error
// 선택적 매개변수를 사용할 경우 
// 매개변수 이름 끝에 ?를 붙인다. (fitstName?: string, ...)

let greeting = (firstName: string, lastName?: string): string => {
	return `hello, ${firstName} ${lastName}`;
}

// 매개변수 보다 작게 전달한 경우
greeting('coding'); // hello, coding undefined

// 매개변수에 맞게 전달한 경우
greeting('coding', 'kim'); // hello, coding kim

// 매개변수 보다 많이 전달한 경우
greeting('coding', 'kim', 'hacker'); // Error
// 할당된 매개변수의 값을 정해놓은 경우

let greeting = (firstName: string, lastName: string ="kim"): string => {
	return `hello, ${firstName} ${lastName}`;
}

// 매개변수 보다 작게 전달한 경우
greeting('coding'); // hello, coding kim

// 매개변수에 맞게 전달한 경우
greeting('coding', undefined); // hello, coding kim

// 매개변수 보다 많이 전달한 경우
greeting('coding', 'kim', 'hacker'); // Error

 

반응형
profile

Space

@Space_zero

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!