LoginSignup
0
0

More than 3 years have passed since last update.

【TypeScript】関数定義

Last updated at Posted at 2020-12-03

はじめに

前回は【TypeScript】インターフェースの使い方についてアウトプットしました。
今回は関数定義について学んだことをアウトプットします。

functionキーワード

引数returnで返される値に型定義をすることが出来ます。


function isDone(flag: boolean): string {
  return "done";
}

無名関数

関数が格納された変数自体に型定義することが出来ます。

let add = function(a: number, b: number): number {
    return a + b;
}

アロー関数

上記をアロー関数で置き換えることが出来ます。

let add = (a: number, b: number): number => {
    return a + b
}

直ちに値を返す場合は{}とreturnが省略可能

この場合は1行で書くことが出来ます。

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

オプショナルなパラメータ

?を使うことでそのパラメータはオプショナル扱いとなり、関数の呼び出し時に引数を省略することができます。
オプショナルな引数は必ずオプショナルではないすべてのパラメータの後に付ける必要があります。

function buildName(firstName: string, lastName?: string) {
    if (lastName) {
        return firstName + " " + lastName;
    } else {
        return firstName;
  }
}
let result1 = buildName("Taro");                  // => OK!!
let result2 = buildName("Taro", "Yamada", "Yamada");  // => error
let result3 = buildName("Taro", "Yamada");         // => OK!!

デフォルトパラメータ

引数の値が未入力の場合のデフォルト値を設定出来ます。

function greet(name: string = '太郎さん') {
  console.log(`Hello, ${name}`);
}

greet('Qiita');  // => 'Hello, Qiita'
greet();  // => 'Hello, 太郎さん'

参照

TypeScript Handbook : Functions

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0