基本の型定義(boolean, number, string, array, tuple, any, unknown)

スポンサーリンク
TypeScript

【実務・中級編】 マップ型(Mapped Types)の基礎 – TypeScript実践ガイド

こんにちは。チームのコードレビューをしていて、「お、ここ綺麗に型がまとまってるね」と後輩の成長に嬉しくなったり、逆に「あー、ここコピペで同じような型定義を量産しちゃってるな…」と頭を抱えたりするシニアエンジニアの私です。君たち、日々のフロン...
TypeScript

【実務・中級編】 再帰的な型定義 – TypeScript実践ガイド

やあ、最近のコードベースの調子はどうだい?フロントエンドの現場でバリバリとTypeScriptを書いていくと、最初は `string` や `number` みたいなプリミティブな型を行儀よく並べて満足していたはずが、いつの間にか「あれ、こ...
TypeScript

【実務・中級編】 インターフェースの継承(extends) – TypeScript実践ガイド

おい、調子はどうだい?最近、君が書いているコードをレビューしていて思ったんだ。「お、結構型安全を意識して書けるようになってきたな」ってね。ただ、大規模なアプリケーションを組んでいくと、どうしても似たようなプロパティを持つオブジェクトの型定義...
TypeScript

【実務・中級編】 インターフェースの宣言結合(Declaration Merging) – TypeScript実践ガイド

おい、調子はどうだい?最近、チームのコードレビューをしていて「おっ、いい感じに型定義書けるようになってきたな」って思っていた矢先に、既存のライブラリの型を拡張したくて大ハマりしている後輩を見かけたんだよね。「先輩、なんか型が勝手に合体するん...
TypeScript

【実務・中級編】 型エイリアスにおけるジェネリクスの利用 – TypeScript実践ガイド

おい、調子はどうだい?最近、君が書いたコンポーネントの型定義をレビューしていて思ったんだ。「お、だいぶ書けるようになってきたな」ってね。でも、そろそろ「動くけど、なんだか似たような型定義をコピペで量産している気がする……」というモヤモヤを抱...
TypeScript

【実務・中級編】 ユーザー定義型ガード(Type Predicates) – TypeScript実践ガイド

こんにちは。君もそろそろ、TypeScriptの「型アサーション(`as`キャスト)」の乱用に罪悪感を覚え始める頃合いじゃないかと思うんだ。「とりあえず `as User` って書いとけばコンパイル通るし……」なんてコード、レビューで後輩に...
TypeScript

【実務・中級編】 非nullアサーション演算子(!) – TypeScript実践ガイド

やあ、お疲れ様。最近、コードレビューをしていて「またか」と頭を抱えたくなる瞬間があるんだよね。そう、あのコードのあちこちに見え隠れする感嘆符(`!`)、つまり非nullアサーション演算子(Non-null Assertion Operato...
TypeScript

【実務・中級編】 型アサーション(Type Assertions) – TypeScript実践ガイド

こんにちは。チームのコードレビューをしていて、最近こんなコードを見かけて思わず天を仰いだんだよね。// やりがちな「とりあえず as で黙らせる」やつconst user = JSON.parse(localStorage.getItem(...
TypeScript

【実務・中級編】 判別可能なユニオン型(Discriminated Unions) – TypeScript実践ガイド

おい、最近TypeScript書いてて「この `any` とか `as` のキャスト、そろそろ誰何(すいか)される頃合いだな……」なんて冷や汗かいてないか?気持ちはよく分かる。APIから飛んでくるレスポンスや、複雑なUIの状態管理(Redu...
TypeScript

【実務・中級編】 instanceof演算子による型ガード – TypeScript実践ガイド

やあ。前回のリリースで、また若手が `as any` の魔窟に足を踏み入れて自爆しているのを目撃してね。そろそろ「なんとなく型アサーションで逃げる癖」を直してもらわないと、プロダクトの寿命が縮まる一方だと危機感を抱いているところだ。今回は、...
スポンサーリンク