Skip to content
← Back to rules

eslint/no-sparse-arrays 正しさ

This rule is turned on by default.

何をするか

スパース配列(要素が欠けている配列)の使用を禁止します。

なぜ問題なのか

以下の例を見てください:

javascript
const items = [, ,];

この例における items 配列は長さが 2 ですが、実際には items[0]items[1] に値が存在していません。配列リテラル内にカンマのみで構成されており、長さは設定されているものの、実際の要素値は設定されていないという点が、多くの開発者にとってスパース配列を混乱させます。

スパース配列に関する混乱が大きいため、コード内で本当に有用であると確信できる場合を除き、使用を避けることが推奨されます。

このルールに違反する誤りの例:

javascript
var items = [, ,];
javascript
var colors = ["red", , "blue"];

このルールに準拠する正しい例:

javascript
var items = [];

// 最後の要素の後にカンマがあるのは問題ありません

javascript
var colors = ["red", "blue"];

使用方法

設定ファイルまたは CLI でこのルールを有効化するには、次のように記述できます:

json
{
  "rules": {
    "no-sparse-arrays": "error"
  }
}
bash
oxlint --deny no-sparse-arrays

参照