move #variables--unary-increment-decrement to correct section

This commit is contained in:
Alexey Raspopov
2016-09-12 10:06:15 +03:00
committed by GitHub
parent 7da28d43ad
commit 2a28b9c82f

View File

@@ -1285,35 +1285,6 @@ 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)**
@@ -1487,6 +1458,36 @@ Other Style Guides
// the same applies for `const`
```
<a name="variables--unary-increment-decrement"></a><a name="13.6"></a>
- [13.6](#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)**