본문 바로가기
개발언어/TypeScript

함수 (Function)

by Ligion 2021. 4. 10.

 

기본형태

각각 파라미터에 타입 선언, 리턴 타입도 선언

  // JavaScript
  function jsAdd(num1, num2) {
    return num1 + num2;
  }

  // TypeScript
  function tsAdd(num1: number, num2: number): number {
    return num1 + num2;
  }

Optional Parameter

옵셔널 문법을 사용한 함수

  // 파라미터명 옆 물음표로 해당 파라미터의 사용유무를 선택할 수 있음
  function printName(firstName: string, lastName?: string) {
    console.log(firstName);
    console.log(lastName);
  }
  printName('Steve', 'Jobs');
  printName('Ellie');

  
  function printName2(firstName: string, lastName: string) {
    console.log(firstName);
    console.log(lastName);
  }
  printName2('Steve'); // error

Default Parameter

  function printMessage(message: string = 'default message') {
    console.log(message);
  }
  printMessage();	// default message

파라미터에 값을 미리 넣어두면 해당 파라미터를 삽입하지않아도 컴파일 에러가 나지않음


Rest parameter

스프레드 문법(Spread Syntax)을 사용하여 만든 함수

  function addNumbers(...numbers: number[]): number {
    return numbers.reduce((a, b) => a + b);
  }
  console.log(addNumbers(1, 2));
  console.log(addNumbers(1, 2, 3, 4));
  console.log(addNumbers(1, 2, 3, 4, 5, 0));

파라미터의 개수가 정해져있지않고 다수의 파라미터를 묶어서 배열로 만들어줌


Spread

  • 1.확산되다
  • 2.퍼지다
  • 3.퍼뜨리다
  • 4.번지다
  • 5.유포시키다

댓글