Eslint参考手册
规则 | Rules
no-sparse-arrays
"extends": "eslint:recommended"
配置文件中的属性启用此规则。
稀疏数组包含空插槽,最常见的原因是在数组文字中使用了多个逗号,例如:
var items = [,,];
虽然items
在这个例子中的数组有length
2个,但实际上在items[0]
或中没有值items[1]
。事实上,数组文字只有逗号才有效,加上length
被设置的和实际的项目值没有被设置,这使得稀疏数组对于许多开发者来说变得混乱。考虑以下:
var colors = [ "red",, "blue" ];
在这个例子中,colors
数组有length
3个。但是开发人员是否打算在数组中间有一个空白点?还是它是一个错字?
以这种方式定义的稀疏数组的混淆是足够的,建议避免使用它们,除非您确定它们对您的代码有用。
规则细节
这条规则不允许稀疏数组文字,它们在逗号前没有元素的地方有“孔”。它不适用于最后一个元素之后的尾随逗号。
此规则的错误代码示例:
/*eslint no-sparse-arrays: "error"*/
var items = [,];
var colors = [ "red",, "blue" ];
此规则的正确代码示例:
/*eslint no-sparse-arrays: "error"*/
var items = [];
var items = new Array(23);
// trailing comma (after the last element) is not a problem
var colors = [ "red", "blue", ];
何时不使用它
如果你想使用稀疏数组,那么禁用这个规则是安全的。
Further Reading
- 不一致的数组文字版本此规则是在 ESLint 0.4.0.Resources中引入的
- Rule source
- Documentation source
规则 | Rules相关

ESLint 是一个代码规范和错误检查工具,有以下几个特性。所有东西都是可以插拔的。你可以调用任意的 rule api 或者 formatter api 去打包或者定义 rule or formatter。任意的 rule 都是独立的。没有特定的 coding style,你可以自己配置。
主页 | https://eslint.org/ |
源码 | https://github.com/eslint/eslint |
发布版本 | 4.12.0 |