Skip to Content
初めてのTypeScript ―型安全なJavaScriptでWeb開発を加速する
book

初めてのTypeScript ―型安全なJavaScriptでWeb開発を加速する

by Josh Goldberg, 今村 謙士, 原 隆文
June 2023
Intermediate to advanced content levelIntermediate to advanced
336 pages
4h 39m
Japanese
O'Reilly Japan, Inc.
Content preview from 初めてのTypeScript ―型安全なJavaScriptでWeb開発を加速する

5章関数

Function arguments

In one end, out the other

As a return type

関数の引数

一方から入って、もう一方から出ていく

戻り値の型として

……………………………………………………

 

2章 型システム」では、変数の型を指定する型アノテーションの使い方を学びました。ここでは、関数のパラメーターと戻り値の型について同じことを行う方法——および、それが役に立つ理由——を学びます。

5.1 関数のパラメーター

次のようなsing関数を考えてみましょう。この関数はsongパラメーターを受け取り、それをログに出力します。

function sing(song) {
  console.log(`Singing: ${song}!`);
}

このsing関数を書いた開発者は、songパラメーターに、どのような型の値が渡されることを意図したのでしょうか?

stringでしょうか? オーバーライドされたtoString()メソッドを持つオブジェクトでしょうか? それとも、このコードにはバグがあるのでしょうか? 誰にもわかりません!

明示的に宣言された型情報がなければ、決してわかりません。TypeScriptはこれをany型と見なします。パラメーターの型は何でも構わないということです。

変数と同様に、TypeScriptでは、型アノテーションを使って関数パラメーターの型を宣言できます。次のように「: string」を使って、songパラメーターがstring型であることをTypeScriptに伝えられます。

function sing(song: string) {
  console.log(`Singing: ${song}!` ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Pythonではじめるバイオインフォマティクス ―可読性・拡張性・再現性のあるコードを書くために

Pythonではじめるバイオインフォマティクス ―可読性・拡張性・再現性のあるコードを書くために

Ken Youens-Clark, 異業種データサイエンス研究会
スクラム実践者が知るべき97のこと

スクラム実践者が知るべき97のこと

Gunther Verheyen, 吉羽 龍太郎, 原田 騎郎, 永瀬 美穂
サイトリライアビリティワークブック ―SREの実践方法

サイトリライアビリティワークブック ―SREの実践方法

Betsy Beyer, Niall Richard Murphy, David K. Rensin, Kent Kawahara, Stephen Thorne, 澤田 武男, 関根 達夫, 細川 一茂, 矢吹 大輔, 玉川 竜司

Publisher Resources

ISBN: 9784814400362Other