Skip to content

Commit 1ee8d98

Browse files
committed
Добавляет правила помогающие избежать ошибок в условных операторах
1 parent cfd3e9b commit 1ee8d98

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

app/templates/partials/js/js-rules.hbs

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,13 +200,32 @@ var foo = "Copyright \u00A9"; // unicode
200200
- Код работает в строгом режиме: в начале всех файлов явно прописана директива `use strict`.
201201

202202
## Условные операторы
203-
'yoda': ['error', "never"],
203+
'yoda': ['error', "never"]
204+
- Запрещена "проверка Йоды" — в условных операторах в блоке условия при сравнении переменной или свойства со значением сначала идет переменная или свойство объекта и только потом значения не наоброт.
205+
206+
```javascript
207+
if (1 === myValue) {} // Плохо
208+
if (myValue === 1) {} // Хорошо
209+
```
210+
204211
'eqeqeq': 'error', // использование строгого сравнения
205-
'no-cond-assign': 'error', // eslint:recommended // запрет на присвоение в блоке условия
206-
'no-unsafe-negation': 'error', // небезопасное отрицание (использование ! в in или instanceof без скобок)
212+
- При сравнении двух значений используется оператор строгого сравнения вместо оператора нестрогого сравнения
213+
214+
'no-cond-assign': 'error', // eslint:recommended // запрет на присвоение в блоке
215+
- В условных операторах не используется оператор присвоения
216+
217+
'no-unsafe-negation': 'error', //
218+
- В условтях не используется небезопасное отрицание, например использование ! в in или instanceof без скобок.
219+
207220
'use-isnan': 'error',
221+
- Запрещено сравнение с NaN. Для проверки, является результат операции числовым, нужно использовать `isNaN`.
222+
208223
'no-fallthrough': 'error', // запрет на проваливание в switch
224+
- Запрещено использовать case без break или return в блоках switch.
225+
209226
'no-nested-ternary': 'error',
227+
- Не используются вложенные тернарные операторы.
228+
210229

211230
## Функции
212231
'consistent-return': 'error', // функция не возвращает undefined, особенно если есть другой return

0 commit comments

Comments
 (0)