Spec-Zone.ru › ESLint

semi-spacing

Обеспечивает единообразные пробелы до и после точек с запятой

🔧 Можно исправить автоматически

Некоторые проблемы, о которых сообщает это правило, можно исправить автоматически с помощью параметра командной строки в --fix

Важно

Это правило было устаревшим объявлено в ESLint v8.53.0. Оно будет удалено в v11.0.0. Используйте соответствующее правило из @stylistic/eslint-plugin.

Подробнее

JavaScript позволяет ставить ненужные пробелы перед точкой с запятой или после неё.

Запрет или обязательное использование пробелов вокруг точки с запятой может повысить удобочитаемость вашей программы.

var a = "b" ;

var c = "d";var e = "f";

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

Это правило обеспечивает правильное использование пробелов вокруг точки с запятой. Оно запрещает пробелы перед точкой с запятой в выражениях.

Это правило не проверяет пробелы в следующих случаях:

  • Пробелы после точки с запятой, если она является первым токеном в строке.

  • Пробелы перед точкой с запятой, если перед ней стоит открывающая скобка (( или {), или пробелы после точки с запятой, если за ней следует закрывающая скобка () или }). Эти пробелы проверяются правилами space-in-parens или block-spacing.

  • Пробелы вокруг точки с запятой в цикле for с пустым условием (for(;;)).

Параметры

Правило принимает один параметр — объект с двумя ключами before и after, принимающими логические значения true или false. Если before имеет значение true, пробелы перед точками с запятой обязательны; если значение — false, пробелы перед точками с запятой запрещены. Если after имеет значение true, пробелы после точек с запятой обязательны; если значение — false, пробелы после точек с запятой запрещены. Параметр after применяется только в том случае, если точка с запятой находится не в конце строки.

Значение по умолчанию — {"before": false, "after": true}.

    "semi-spacing": ["error", {"before": false, "after": true}]

{"before": false, "after": true}

Это параметр по умолчанию. Он требует пробелы после точек с запятой и запрещает пробелы перед ними.

Примеры неправильного кода для этого правила:

Открыть в Playground
/*eslint semi-spacing: "error"*/

var foo;
var foo;var bar;
throw new Error("error");
while (a) { break; }
for (i = 0; i < 10; i++) {}
for (i = 0;i < 10;i++) {}

Примеры правильного кода для этого правила:

Открыть в Playground
/*eslint semi-spacing: "error"*/

var foo;
var foo; var bar;
throw new Error("error");
while (a) { break; }
for (i = 0; i < 10; i++) {}
for (;;) {}
if (true) {;}
;foo();

{"before": true, "after": false}

Этот параметр требует пробелы перед точками с запятой и запрещает пробелы после них.

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

Открыть в Playground
/*eslint semi-spacing: ["error", { "before": true, "after": false }]*/

var foo;
var foo ;var bar;
throw new Error("error");
while (a) { break; }
for (i = 0;i < 10;i++) {}
for (i = 0;i < 10;i++) {}

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

Открыть в Playground
/*eslint semi-spacing: ["error", { "before": true, "after": false }]*/

var foo ;
var foo ;var bar ;
throw new Error("error") ;
while (a) {break ;}
for (i = 0 ;i < 10 ;i++) {}

Когда не следует использовать это правило

Вы можете отключить это правило, если для вас не важна единообразная расстановка пробелов перед точками с запятой и после них.

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

  • semi
  • no-extra-semi
  • comma-spacing
  • block-spacing
  • space-in-parens

Версия

Это правило появилось в ESLint v0.16.0.

Ресурсы

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

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

Spec-Zone.ru

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