# max-depth
强制块可以嵌套的最大深度
如果块嵌套超过一定深度,许多开发人员认为代码难以阅读。
# 规则详情
此规则强制执行块可以嵌套的最大深度以降低代码复杂性。
# 选项
此规则有一个数字或对象选项:
"max"
(默认4
)强制块可以嵌套的最大深度
**已弃用:**对象属性 maximum
已弃用;请改用对象属性 max
。
# max
此规则使用默认 { "max": 4 }
选项的错误代码示例:
/*eslint max-depth: ["error", 4]*/
function foo() {
for (;;) { // Nested 1 deep
while (true) { // Nested 2 deep
if (true) { // Nested 3 deep
if (true) { // Nested 4 deep
if (true) { // Nested 5 deep
}
}
}
}
}
}
此规则使用默认 { "max": 4 }
选项的正确代码示例:
/*eslint max-depth: ["error", 4]*/
function foo() {
for (;;) { // Nested 1 deep
while (true) { // Nested 2 deep
if (true) { // Nested 3 deep
if (true) { // Nested 4 deep
}
}
}
}
}
请注意,类静态块不计为嵌套块,并且它们中的深度是与封闭上下文分开计算的。
带有 { "max": 2 }
选项的此规则的错误代码示例:
/*eslint max-depth: ["error", 2]*/
function foo() {
if (true) { // Nested 1 deep
class C {
static {
if (true) { // Nested 1 deep
if (true) { // Nested 2 deep
if (true) { // Nested 3 deep
}
}
}
}
}
}
}
此规则使用 { "max": 2 }
选项的正确代码示例:
/*eslint max-depth: ["error", 2]*/
function foo() {
if (true) { // Nested 1 deep
class C {
static {
if (true) { // Nested 1 deep
if (true) { // Nested 2 deep
}
}
}
}
}
}