Выключите сложности cyclmatic в у JSHint

Я использую JSHint, и я хочу отключить цикломатическую сложность.

Как я могу это сделать?

4 ответов


предположим, что наша функция называется x. Тогда мы должны просто написать это:

function x () {
    /*jshint maxcomplexity:6 */
}

где 6-номер JS подсказка обычно говорит это в консоли, как это:

статический/рабочего стола.блоки / дни / дни.js: линия 57, col 27, цикломатическая сложность этой функции слишком высока. (6)


Я попытался в верхней части моего файла поставить следующее:

/*jshint maxcomplexity:0 */

и сказал

ожидалось небольшое целое число или "false" и вместо этого увидел "0".

затем попробовал следующее

/*jshint maxcomplexity:false */

и обнаружил, что он отключает предупреждения цикломатической сложности.


мы можем отключить цикломатическую сложность функций в jshint через конфигурационный файл .jshintrc такой:

"maxcomplexity" : false,       // {int} Max cyclomatic complexity per function

остерегайтесь. JSHint не вычисляет цикломатическую сложность правильно. Пример:

function result(a, b, c) {
  return a || b || c;
}

сложность здесь 1; нет ветвей, нет петель. Ошибки JSHint при установке maxcomplexity менее 3. The REPL at http://www.jshint.com также отчеты 3.