eslint/no-sparse-arrays 正确性
它做了什么
禁止使用稀疏数组。
为什么这是不好的?
考虑以下示例:
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