Web制作コラム

TypeScriptとは|JavaScriptに型を付けると何が変わるのか

フロントエンド

書いた時点で間違いに気づけるようにするための仕組みです。何が防げて何が防げないのか、小さな案件でも入れる意味があるのかをまとめます。

TypeScript は、JavaScript に型の情報を書き足せるようにした言語です。Microsoft が 2012年に公開しました。書いたものはそのままブラウザでは動かず、JavaScript に変換してから使います。

型とは「この値は文字列」「この関数は数値を返す」といった決まりごとです。書いた時点でそれに反していれば、実行する前にエディタ上で知らせてくれます。

何が防げるか

  • 関数に渡す引数の数や種類の間違い
  • 存在しないプロパティを読もうとする書き間違い
  • 値が無いかもしれない変数を、無いまま使ってしまうこと
  • APIの返す形が変わったときに、使っている箇所を取りこぼすこと

最後の点が実務では大きく効きます。サーバー側の返却に項目が増えたり名前が変わったりしたとき、画面側のどこを直すかを機械が教えてくれます。型が無いと、動かして気づくまで分かりません。

何は防げないか

型は、値の「形」を検査するだけです。計算の順番が違う、条件の分岐が抜けている、といった論理の誤りは見つかりません。外部から受け取るデータも、型を宣言しただけでは実際にその形である保証はありません。

型を付けたからテストが要らない、ということにはなりません。防げる間違いの種類が違います。

小さな案件でも入れるか

案件目安
静的なLP・コーポレートサイト要らない。JavaScript の量が少なく、効果より手間が上回る
WordPressのテーマ内の軽いスクリプト要らないことが多い
React や Next.js で画面を組む入れる。部品の受け渡しの間違いが減る
管理画面・業務系の画面入れる。項目が多く、後から変わる
長く運用して、人が入れ替わる入れる。仕様書の代わりになる

※ 横にスクロールできます

導入にかかるもの

  1. ビルドの仕組みが必要になる(変換してから配置する)
  2. 外部ライブラリの型定義を入れる手間がかかる
  3. 最初に型を書く時間が増える

書く量は増えます。増えた分が、後の修正で返ってくるかどうかで判断することになります。1回作って終わりなら増えた分だけ損ですし、何度も触るなら早い段階で元が取れます。

ありがちな落とし穴

型の検査が通っても、画面が真っ白になることはあります。型を見ているのは変換の前の段階で、実行時の挙動までは見ていないためです。部品に渡す値の形だけ揃えて、受け取る側で取り出し忘れている、といった書き間違いは型だけでは止まりません。確認は必ず、変換したあとの実際の画面で行います。

ご相談について

当社では React・Next.js のコーディングを TypeScript で承っています。既存の JavaScript を段階的に移す形にも対応できますので、いま動いているものを止めずに進めたい場合はご相談ください。

「フロントエンド」のコラム

この記事と同じカテゴリの記事です。

一覧に戻る

SERVICES

WordPressとECサイトの制作、
まとめてご相談いただけます

WordPress

WordPress制作・構築代行

デザインデータやコーディング済みHTMLを、オリジナルテーマとして構築します。プラグイン開発も対応。

構築基本費用 50,000円

詳しく見る
コーディング

コーディング代行

デザインデータをHTML/CSSに起こします。WordPress化まで通しでも、コーディングだけでも承ります。

1ページ 15,000円〜

詳しく見る
React

Reactコーディング代行

デザインデータをReactのコンポーネントとして実装します。既存アプリへの画面追加・UI改修だけでも承ります。

1ページ 18,000円〜

詳しく見る
Next.js

Next.js制作・コーディング代行

検索エンジンに読まれるHTMLを返せるNext.jsで構築します。静的書き出しでレンタルサーバーでも公開できます。

1ページ 18,000円〜

詳しく見る
EC / WordPress

WelcartでのECサイト構築

WordPress専用のネットショップ構築プラグイン。機能面まで踏み込んだカスタマイズができます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / EC-CUBE

EC-CUBEでのECサイト構築

国産オープンソースのECパッケージ。決済・受注・在庫まわりを業務に合わせて作り込めます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / ASPカート

ECサイト制作代行

Shopify・MakeShop・カラーミーなどのカートに、オリジナルデザインを組み込みます。

構築基本費用 100,000円

詳しく見る

制作のご相談も承っています

デザインデータと画面数をお知らせいただければ、お見積りと納期をご提示します。

直近2週間の受付状況制作のリソース

10/5(月)〜10/9(金)残りわずか
10/12(月)〜10/16(金)余裕があります
Chatworkで相談する