CHAPTER 02 / 08 TYPES & RULES

「型」はデータの約束

文字・数値・真偽値。経費申請の入力欄から、型の役割をつかみます。

◷ 目安 10分確認クイズ 3問未読
この章のゴール

文字列・数値・真偽値の違いと、型で防げるミスを説明できる。

この章で学ぶこと
2.1

申請書にも、入力欄のルールがある

経費申請書には「氏名」「金額」「領収書あり」の欄があります。氏名は文字、金額は数値、領収書の有無は「はい・いいえ」。どの欄も同じ内容を受け付けるわけではありません。

TypeScriptの型意味経費申請の例
string文字列。引用符で囲んで書く"交通費"、"1000"
number数値。計算に使う1000、1.1
boolean真偽値。trueかfalsetrue(領収書あり)
2.2

コロンの右が「どんな値か」

コードを読むTypeScript
const applicant: string = "佐藤";
const amount: number = 1200;
const hasReceipt: boolean = true;

左から順に読みます。constは名前を付ける宣言、amountは名前、: numberは「数値を扱う」という約束、= 1200は実際の値です。セミコロンは文の区切りとしてよく使われます。

すべての値に型を書く必要はありません。const amount = 1200;でも、TypeScriptは右側の値から数値だと判断できます。これを型推論と呼びます。

2.3

体験:金額欄に入れてみる

金額の型をnumberにしたとき、どの値が約束に合うか選んでみましょう。これは考え方を学ぶための簡易シミュレーションです。TypeScriptのコンパイラは実行していません。

const amount: number = ?;

値を選ぶと、型のチェック結果を表示します。

マイナスの金額もnumberです。「金額は0以上」という業務ルールは、この型だけでは保証できません。数値かどうかと、金額として妥当かどうかは、確認する内容が違います。

2.4

型があることと、入力を検査することは別

フォームに入力された値や、外部サービスから届くデータが、宣言どおりとは限りません。外から来た値は、実行時に中身を検査する必要があります。文字の数字を数値に変換する処理と、その結果が正しい数値か調べる処理も必要です。

CHECK YOUR UNDERSTANDING

理解を、たしかめよう。

各問の答えを選び、「答え合わせ」を押してください。何度でもやり直せます。

Q01社員番号「0012」を先頭の0ごと保つなら、まず考える型は?
Q02numberだけでは防げないものは?
Q03型推論とは?

ここまで読めたら、ひと区切り。

理解できたところまでを振り返って、読了を記録しましょう。

記録はこのブラウザに保存されます。