
条件型(Conditional Types)は TypeScript の型システムにおける「if 文」だ。型レベルで分岐処理を書...
`satisfies` は TypeScript 4.9 で追加された演算子だ。型アノテーションとは異なり、値の型を維持しつつ、...
関数の戻り値や引数の型を取り出したいとき、`ReturnType` と `Parameters` が使える。既存の関数から型を導...
`Pick`、`Omit`、`Partial` は TypeScript の代表的なユーティリティ型だ。単体で使うことも多いが、...
`Record<K, V>` はオブジェクトの型を定義するユーティリティ型だ。便利だが、何でもかんでも `Record` で書け...
型ガードは、実行時の値チェックを型システムに伝える仕組みだ。`unknown` や ユニオン型を安全に扱うために欠かせないが、書...
`never` は「絶対に起こらない」ことを表す型だ。一見すると使い道がなさそうだが、実際には型の網羅性チェックやエラー処理で重...
`any` と `unknown` はどちらも「何でも入る型」だが、その後の扱いがまったく異なる。`any` は型チェックを放棄...
TypeScript で定数の集合を表現するとき、`enum` を使う方法とユニオン型を使う方法がある。どちらも似たような目的を...
TypeScript には `interface` と `type` という、一見似たような機能が 2 つある。どちらもオブジェ...
TypeScript を書いていると、`Object.keys()` の戻り値が `string[]` であることに疑問を持つ人...
TypeScript で型安全性を高めるとき、`as const` は強力な武器になる。しかし、どこにでも付ければよいわけではな...
`setHTMLUnsafe` は HTML 文字列を要素に挿入するメソッドです。名前に「Unsafe」とあるとおり、サニタイズ...
`innerHTML` は文字列を HTML として解釈するため、ユーザー入力をそのまま渡すと XSS 脆弱性の原因になります。...
`textContent` プロパティに文字列を代入すると、ブラウザはその文字列を「プレーンテキスト」として扱います。HTML ...
HTML エスケープとは、`<`, `>`, `&`, `"`, `'` などの特殊文字を文字実体参照に変換し、XSS(クロスサ...
structuredClone は構造化複製アルゴリズム(Structured Clone Algorithm)を使用してオブジ...
TypeScript で配列をコピーするとき、浅いコピー(shallow copy)と深いコピー(deep copy)の違いを理...
globalThis は JavaScript の実行環境に依存せず、グローバルオブジェクトを参照するための標準的な方法である。...
ES Module では各モジュールが独自のスコープを持つため、モジュール内で宣言した変数は自動的にグローバルにならない。真のグ...
動的インポート(`import()`)で別ファイルを読み込んだ場合、同名の関数があっても衝突しない。各モジュールは独立したスコー...
ES Module(`type="module"` を指定したスクリプト)で読み込んだ関数やトップレベルの変数は、window ...
`@rollup/plugin-node-resolve` は、**npm パッケージを `node_modules` から解決...












