mirror of
https://github.com/airbnb/javascript.git
synced 2026-01-13 21:48:05 -05:00
[eslint config] [base] [breaking] Add no-plusplus in style.js and added explanation in README.
This commit is contained in:
29
README.md
29
README.md
@@ -1278,6 +1278,35 @@ Other Style Guides
|
||||
}
|
||||
```
|
||||
|
||||
- [13.5](#variables--unary-increment-decrement) Avoid using unary increments and decrements (++, --). eslint [`no-plusplus`](http://eslint.org/docs/rules/no-plusplus)
|
||||
|
||||
> Why? Per the eslint documentation, unary increment and decrement statements are subject to automatic semicolon insertion and can cause silent errors with incrementing or decrementing values within an application. It is also more expressive to mutate your values with statements like `num += 1` instead of `num ++`. Disallowing unary increment and decrement statements also prevents you from pre-incrementing/pre-decrementing values unintentionally which can also cause unexpected behavior in your programs.
|
||||
|
||||
```javascript
|
||||
// bad
|
||||
|
||||
let array = [1, 2, 3];
|
||||
let num = 1;
|
||||
let increment = num ++;
|
||||
let decrement = -- num;
|
||||
|
||||
for(let i = 0; i < array.length; i++){
|
||||
let value = array[i];
|
||||
++value;
|
||||
}
|
||||
|
||||
// good
|
||||
|
||||
let array = [1, 2, 3];
|
||||
let num = 1;
|
||||
let increment = num += 1;
|
||||
let decrement = num -= 1;
|
||||
|
||||
array.forEach((value) => {
|
||||
value += 1;
|
||||
});
|
||||
```
|
||||
|
||||
**[⬆ back to top](#table-of-contents)**
|
||||
|
||||
|
||||
|
||||
@@ -180,7 +180,8 @@ module.exports = {
|
||||
'no-new-object': 'error',
|
||||
|
||||
// disallow use of unary operators, ++ and --
|
||||
'no-plusplus': 'off',
|
||||
// http://eslint.org/docs/rules/no-plusplus
|
||||
'no-plusplus': 2,
|
||||
|
||||
// disallow certain syntax forms
|
||||
// http://eslint.org/docs/rules/no-restricted-syntax
|
||||
|
||||
Reference in New Issue
Block a user