Отключить циклическую сложность в JSHint

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

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


person user2950593    schedule 08.11.2013    source источник
comment
Как вы используете jshint? Вы используете его с ворчанием? Какой НПМ? Вам нужно уточнить это, если вы хотите получить точный ответ.   -  person Munim    schedule 08.11.2013
comment
Вы читали документацию?   -  person Andreas    schedule 08.11.2013
comment
да, например, с grunt, я включаю его, просто пишу на статическом сервере терминала jshint, где статический сервер - это мои папки, которые мне нужно проверить с помощью jshint   -  person user2950593    schedule 08.11.2013
comment
да, я думаю, это первая ссылка, которую я нашел   -  person user2950593    schedule 08.11.2013
comment
Этот параметр позволяет контролировать цикломатическую сложность кода. Цикломатическая сложность измеряет количество линейно независимых путей через исходный код программы. Подробнее о цикломатической сложности читайте в Википедии. это все=)   -  person user2950593    schedule 08.11.2013


Ответы (4)


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

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

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

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

person user2950593    schedule 08.11.2013

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

/*jshint maxcomplexity:0 */

И было сказано

Ожидал небольшое целое число или «ложь», а вместо этого увидел «0».

Итак, попробовал следующее

/*jshint maxcomplexity:false */

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

person Tim Tisdall    schedule 06.05.2014

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

"maxcomplexity" : false,       // {int} Max cyclomatic complexity per function
person Alee    schedule 12.09.2017

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

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

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

person remy70    schedule 03.09.2014