Spec-Zone.ru › ESLint

максимальное количество операторов

Принудительно устанавливает максимальное количество операторов, разрешённых в блоках функций

Правило max-statements позволяет указать максимальное количество операторов, разрешенных в функции.

function foo() {
  var bar = 1; // one statement
  var baz = 2; // two statements
  var qux = 3; // three statements
}

Подробности правила

Это правило принудительно устанавливает максимальное количество операторов, разрешенных в блоках функций.

Параметры

Это правило имеет числовой или объектный параметр:

  • "max" (по умолчанию 10) принудительно устанавливает максимальное количество операторов, разрешённых в блоках функций

Устарело: Свойство объекта maximum устарело; используйте свойство объекта max вместо него.

Это правило имеет объектный параметр:

  • "ignoreTopLevelFunctions": true игнорирует функции верхнего уровня

max

Примеры неправильного кода для этого правила с параметром по умолчанию { "max": 10 }:

Открыть в Playground
/*eslint max-statements: ["error", 10]*/

functionfoo(){var foo1 =1;var foo2 =2;var foo3 =3;var foo4 =4;var foo5 =5;var foo6 =6;var foo7 =7;var foo8 =8;var foo9 =9;var foo10 =10;var foo11 =11;// Too many.}

let bar = ()=>{var foo1 =1;var foo2 =2;var foo3 =3;var foo4 =4;var foo5 =5;var foo6 =6;var foo7 =7;var foo8 =8;var foo9 =9;var foo10 =10;var foo11 =11;// Too many.};

Примеры правильного кода для этого правила с параметром по умолчанию { "max": 10 }:

Открыть в Playground
/*eslint max-statements: ["error", 10]*/

function foo() {
  var foo1 = 1;
  var foo2 = 2;
  var foo3 = 3;
  var foo4 = 4;
  var foo5 = 5;
  var foo6 = 6;
  var foo7 = 7;
  var foo8 = 8;
  var foo9 = 9;
  return function () { // 10

    // The number of statements in the inner function does not count toward the
    // statement maximum.

    var bar;
    var baz;
    return 42;
  };
}

let bar = () => {
  var foo1 = 1;
  var foo2 = 2;
  var foo3 = 3;
  var foo4 = 4;
  var foo5 = 5;
  var foo6 = 6;
  var foo7 = 7;
  var foo8 = 8;
  var foo9 = 9;
  return function () { // 10

    // The number of statements in the inner function does not count toward the
    // statement maximum.

    var bar;
    var baz;
    return 42;
  };
}

Обратите внимание, что это правило не применяется к статическим блокам классов, и что операторы в статических блоках классов не учитываются как операторы в окружающей функции.

Примеры правильного кода для этого правила с параметром { "max": 2 }:

Открыть в Playground
/*eslint max-statements: ["error", 2]*/

function foo() {
    let one;
    let two = class {
        static {
            let three;
            let four;
            let five;
            if (six) {
                let seven;
                let eight;
                let nine;
            }
        }
    };
}

ignoreTopLevelFunctions

Примеры дополнительного правильного кода для этого правила с параметром { "max": 10 }, { "ignoreTopLevelFunctions": true }:

Открыть в Playground
/*eslint max-statements: ["error", 10, { "ignoreTopLevelFunctions": true }]*/

function foo() {
  var foo1 = 1;
  var foo2 = 2;
  var foo3 = 3;
  var foo4 = 4;
  var foo5 = 5;
  var foo6 = 6;
  var foo7 = 7;
  var foo8 = 8;
  var foo9 = 9;
  var foo10 = 10;
  var foo11 = 11;
}

Связанные правила

  • complexity
  • max-depth
  • max-len
  • max-lines
  • max-lines-per-function
  • max-nested-callbacks
  • max-params

Версия

Это правило было добавлено в ESLint v0.0.9.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/max-statements

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API