Eslint参考手册
规则 | Rules
no-empty-pattern
"extends": "eslint:recommended"
配置文件中的属性启用此规则。
使用解构时,可以创建一个无效的模式。发生这种情况时,将空花括号用于嵌入对象解构模式的右侧,例如:
// doesn't create any variables
var {a: {}} = foo;
在这段代码中,没有创建新的变量,因为a
它只是一个位置帮助器,而{}
期望包含要创建的变量,例如:
// creates variable b
var {a: { b }} = foo;
在许多情况下,空白对象模式是作者打算使用默认值的错误,例如:
// creates variable a
var {a = {}} = foo;
这两种模式之间的区别很微妙,尤其是因为有问题的空白模式看起来就像对象文字一样。
规则细节
此规则旨在标记解构结构对象和数组中的任何空模式,因此,只要遇到问题就会报告问题。
此规则的错误代码示例:
/*eslint no-empty-pattern: "error"*/
var {} = foo;
var [] = foo;
var {a: {}} = foo;
var {a: []} = foo;
function foo({}) {}
function foo([]) {}
function foo({a: {}}) {}
function foo({a: []}) {}
此规则的正确代码示例:
/*eslint no-empty-pattern: "error"*/
var {a = {}} = foo;
var {a = []} = foo;
function foo({a = {}}) {}
function foo({a = []}) {}
版本
该规则在 ESLint 1.7.0 中引入。
资源
- 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 |