unicorn/no-null スタイル
何を行うか
null リテラルの使用を禁止し、代わりに undefined を使用することを推奨します。
なぜこれは悪いのか
null の代わりに undefined を使う理由がいくつかあります。
- 実際の経験から、多くの開発者が
nullとundefinedを不統一かつ互換的に使い分けているため、どちらを使うべきかを正確に理解している人はほとんどいません。 nullとundefinedの両方をサポートすると、入力検証が複雑になります。nullを使用すると、TypeScript の型定義が冗長になります:type A = {foo?: string | null}とtype A = {foo?: string}では後者の方が簡潔です。
例
このルールに対して 誤り なコードの例:
javascript
let foo = null;このルールに対して 正しい コードの例:
javascript
let foo;設定
このルールは、次のプロパティを持つ設定オブジェクトを受け取ります。
checkStrictEquality
type: boolean
default: false
true に設定された場合、このルールは null に対する厳密等価/非等価比較(=== および !==)もチェックします。
使用方法
設定ファイルまたは CLI でこのルールを 有効化 するには、次のようにします:
json
{
"rules": {
"unicorn/no-null": "error"
}
}bash
oxlint --deny unicorn/no-null