プリミティブ型

プリミティブ型

3 つの基本の型

TypeScript でいちばんよく使う型は stringnumberboolean の 3 つです。これらをプリミティブ型と呼びます。プリミティブとは、それ以上細かく分解できない一番小さな値のことです。

const name: string = "ゆめさく"; const workCount: number = 3; const isPublished: boolean = true;

string は文字列、number は数値、boolean は true と false の 2 つだけを取る型です。プロフィールのデータは、たいていこの 3 つで書けます。

number は整数も小数も同じ

JavaScript に整数型と小数型の区別が無いのと同じで、TypeScript の number も両方を受け持ちます。

const workCount: number = 3; const averageScore: number = 4.5;

「3 は整数だから別の型があるのでは」と迷う必要はありません。数なら number です。

型を取り違えると計算の意味が変わる

数を文字列で持ってしまうと、実行は通るのに答えだけがおかしくなります。プロフィールの作品数でよく起きる事故です。

const a: number = 3; console.log(a + 1); // 4 const b: string = "3"; console.log(b + 1); // "31"

+ は数どうしなら足し算、文字列が混ざると連結になります。"31" になっても JavaScript は何も言いません。どちらのつもりで書いたのかを型で宣言しておくと、噛み合わない場所でエラーとして止まります。

boolean は比較の結果にも付く

boolean は自分で true と書いたときだけでなく、比較した結果にも付きます。

const isPopular: boolean = workCount > 2; const isEmpty: boolean = workCount === 0;

そのため boolean の変数名は ishas で始める習慣があります。読んだ人が中身を見なくても真偽値だと分かるからです。

手を動かす

演習では、引数に型注釈が 3 つとも書かれた関数を渡します。ただし 2 つが間違った型になっていて、関数の中の処理と噛み合わずエラーが出ます。エラーメッセージを読んで、正しいプリミティブ型に直してください。処理の中身を見れば、どの引数が数でどの引数が真偽値なのかが分かります。

要件

  1. name はそのまま文字列の型でよい
  2. workCountisPublic を正しいプリミティブ型に直す
  3. 処理の中身と戻り値の形は変えない

入出力例

profileSummary("ゆめさく", 3, true)"ゆめさく / 公開作品3件 / 公開中" profileSummary("たなか", 0, true)"たなか / 作品はまだありません / 公開中" profileSummary("さとう", 12, false)"さとう / 公開作品12件 / 非公開" profileSummary("すずき", 1, false)"すずき / 公開作品1件 / 非公開"

ヒント

生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア
編集 LuaGate編集部
main.ts
main.ts
学習モード

メモ

プリミティブ型

⌘S で保存