Skip to Content
プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発
book

プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発

by Boris Cherny, 今村 謙士, 原 隆文
March 2020
Intermediate to advanced
376 pages
5h 9m
Japanese
O'Reilly Japan, Inc.
Content preview from プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発

4章関数

前の章では、TypeScriptの型システムの基礎を学びました。プリミティブ型、オブジェクト、配列、タプル、列挙型について学び、そのほかにTypeScriptの型推論の基礎と、型の割り当て可能性がどのように機能するかについて学びました。これで、TypeScriptのメインディッシュ(関数型プログラマーにとっては存在理由)である「関数」へと進む準備ができました。この章で取り上げるテーマは次のようなものです。

  • TypeScriptでの関数の宣言方法と呼び出し方法
  • シグネチャのオーバーロード
  • 関数についてのポリモーフィズム
  • 型エイリアスについてのポリモーフィズム

4.1 関数の宣言と呼び出し

JavaScriptでは、関数は第一級のオブジェクトです。そのため、他のオブジェクトとまったく同じように扱うことができます。それらを変数に割り当てたり、他の関数に渡したり、関数から返したり、オブジェクトやプロトタイプに割り当てたり、それらにプロパティを追加したり、それらのプロパティを読み取ったり、といったことができます。JavaScriptでは関数を使って行えることがたくさんあり、TypeScriptはそのすべてのものを、豊富な型システムを使って実現します。

TypeScriptでの関数の例を見てみましょう。

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

通常は、関数のパラメーター(この例ではab)を明示的にアノテートします(パラメーターの型を明示的に指定します)。TypeScriptは、関数の本体全体を通じて常に型を推論しますが、文脈から型を推論できるいくつかの特別なケース(詳しくは「4.1.8 文脈的型付け」を参照)を除いて、多くの場合、パラメーターについては型を推論しません。戻り値の型については推論しますが、希望すれば、これも明示的にアノテートすることができます。 ...

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.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

リーダーの作法 ―ささいなことをていねいに

リーダーの作法 ―ささいなことをていねいに

Michael Lopp, 和智 右桂
行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

Stephen Wendel, 武山 政直, 相島 雅樹, 反中 望, 松村 草也

Publisher Resources

ISBN: 9784873119045Other