tsconfig.json の "strict": true は、より厳格な一連のチェックを一度にオンにします。これはすべての新規プロジェクトで強く推奨されており、TypeScript が防ぐために存在するバグを検出します。
json
{ "compilerOptions": { "strict": true } }
有効になる最も影響の大きいフラグ
ts
: = ;
() { u.; }
() {}
{ : ; }
tsconfig.json の "strict": true は、より厳格な一連のチェックを一度にオンにします。これはすべての新規プロジェクトで強く推奨されており、TypeScript が防ぐために存在するバグを検出します。
{ "compilerOptions": { "strict": true } }
: = ;
() { u.; }
() {}
{ : ; }
strictNullChecks は最も重要なものです。これは null/undefined を他の型から分離するため、コンパイラはあらゆる場所で「値が存在しないかもしれない」状況を処理することを強制します。これにより、実行時エラーの第1位である「undefined のプロパティを読み取れない」を排除できます。
大規模なレガシープロジェクトですべてを一度に有効にするのではなく、フラグを段階的にオンにし(strictNullChecks を最初に)、ファイルごとにエラーを修正していきましょう。
strict モードがなければ、TypeScript は本来防ぐべき安全でないパターン(暗黙の any、チェックされない null)の多くを依然として許容してしまいます。
strict モードこそ、TypeScript が最も価値を発揮する場所です。これをデフォルトとして扱い、正当な理由がある場合のみ個別のフラグを緩和しましょう。