Стиль запятых
Обеспечить согласованный стиль запятых
Некоторые проблемы, выявленные этим правилом, могут быть автоматически исправлены опцией --fix командной строки
Это правило было устаревшим в ESLint v8.53.0. Используйте соответствующее правило соответствующее правило в @stylistic/eslint-plugin-js.
Правило Стиль запятых навязывает стили для списков, разделенных запятыми. В JavaScript в основном используются два стиля запятых:
- Стандартный стиль, в котором запятые ставятся в конце текущей строки
- Стиль Запятая сначала, в котором запятые ставятся в начале следующей строки
Одним из оправданий использования стиля Запятая сначала является то, что это может помочь отслеживать отсутствующие и хвостовые запятые. Они представляют проблему, так как отсутствие запятых в объявлениях переменных может привести к утечке глобальных переменных, а хвостовые запятые могут привести к ошибкам в старых версиях IE.
Подробное описание правила
Это правило навязывает согласованный стиль запятых в литералах массивов, литералах объектов и объявлениях переменных.
Это правило не применяется в следующих случаях:
- запятая, предшествуемая и следующая за переносом строки (одиночная запятая)
- литералы массивов, литералы объектов и объявления переменных на одной строке
Параметры
Это правило имеет строковый параметр:
-
"last"(по умолчанию) требует запятой после и в той же строке, что и элемент массива, свойство объекта или объявление переменной -
"first"требует запятой перед и в той же строке, что и элемент массива, свойство объекта или объявление переменной
Это правило также принимает дополнительный exceptions объект:
-
"exceptions"содержит свойства, имена которых соответствуют типам узлов в абстрактном синтаксическом дереве (AST) кода JavaScript:-
"ArrayExpression": trueигнорирует стиль запятых в литералах массивов -
"ArrayPattern": trueигнорирует стиль запятых в образцах массивов деструктуризации -
"ArrowFunctionExpression": trueигнорирует стиль запятых в параметрах выражений стрелочных функций -
"CallExpression": trueигнорирует стиль запятых в аргументах вызовов функций -
"FunctionDeclaration": trueигнорирует стиль запятых в параметрах объявлений функций -
"FunctionExpression": trueигнорирует стиль запятых в параметрах выражений функций -
"ImportDeclaration": trueигнорирует стиль запятых в спецификаторах объявлений импорта -
"ObjectExpression": trueигнорирует стиль запятых в литералах объектов -
"ObjectPattern": trueигнорирует стиль запятых в образцах объектов деструктуризации -
"VariableDeclaration": trueигнорирует стиль запятых в объявлениях переменных -
"NewExpression": trueигнорирует стиль запятых в параметрах выражений конструкторов
-
Способ определения типов узлов, определенных в ESTree, заключается в использовании AST Explorer с парсером espree.
last
Примеры неправильного кода для этого правила с параметром "last" по умолчанию:
/*eslint comma-style: ["error", "last"]*/
var foo = 1
bar = 2;
var foo = 1
bar = 2;
var foo = ["apples"
"oranges"];
function baz() {
return {
"a": 1
"b:": 2
};
}
Примеры правильного кода для этого правила с параметром "last" по умолчанию:
/*eslint comma-style: ["error", "last"]*/
var foo = 1, bar = 2;
var foo = 1,
bar = 2;
var foo = ["apples",
"oranges"];
function baz() {
return {
"a": 1,
"b:": 2
};
}
first
Примеры неправильного кода для этого правила с параметром "first":
/*eslint comma-style: ["error", "first"]*/
var foo = 1
bar = 2;
var foo = ["apples"
"oranges"];
function baz() {
return {
"a": 1
"b:": 2
};
}
Примеры правильного кода для этого правила с параметром "first":
/*eslint comma-style: ["error", "first"]*/
var foo = 1, bar = 2;
var foo = 1
,bar = 2;
var foo = ["apples"
,"oranges"];
function baz() {
return {
"a": 1
,"b:": 2
};
}
Исключения
Пример использования: навязывание стиля запятых *только* в операторах var.
Примеры неправильного кода для этого правила с образцовыми "first", { "exceptions": { … } } параметрами:
/*eslint comma-style: ["error", "first", { "exceptions": { "ArrayExpression": true, "ObjectExpression": true } }]*/
var o = {}
a = [];
Примеры правильного кода для этого правила с образцовыми "first", { "exceptions": { … } } параметрами:
/*eslint comma-style: ["error", "first", { "exceptions": { "ArrayExpression": true, "ObjectExpression": true } }]*/
var o = {fst:1,
snd: [1,
2]}
, a = [];
Когда не стоит его использовать
Это правило можно безопасно отключить, если ваш проект не заботится о соблюдении согласованного стиля запятых.
Связанные правила
Версия
Это правило было введено в ESLint v0.9.0.
Дополнительное чтение
Ресурсы
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/comma-style