Add rule docs

This commit is contained in:
2018-08-20 10:44:07 +05:30
parent d2b727e844
commit 76e545fb08
4 changed files with 44 additions and 19 deletions
+21 -8
View File
@@ -1,7 +1,7 @@
# Always initialize variables during declaration. Set it explicitly to undefined, if required. (undef-init)
Please describe the origin of the rule here.
### It is better to explicitly initialize all variable declarations.
Instead of naked var / let declarations (which are implicitly set to `undefined` anyway), always explicitly set them to `undefined`. It makes clear that you explicitly intended to set them to undefined, not just because you forgot to initialize.
## Rule Details
@@ -11,7 +11,13 @@ Examples of **incorrect** code for this rule:
```js
// fill me in
var a;
let b;
let c, d;
let d, e = 1;
for (var f of {}){var g;}
for (var i in []){var j;}
```
@@ -19,18 +25,25 @@ Examples of **correct** code for this rule:
```js
// fill me in
var a = undefined;
let b = undefined;
let b1 = b;
let c = undefined, d = undefined;
for (var f of {}){var g = undefined;}
for (var i in []){do_something()}
```
### Options
If there are any options, describe them here. Otherwise, delete this section.
There are no options
## When Not To Use It
Give a short description of when it would be appropriate to turn off this rule.
If you feel setting vraiables implicitly to `undefined` is better than setting them explicitly, then don't use this - use `no-undef-init`.
## Further Reading
## More
If there are other links that describe the issue this rule addresses, please include them here in a bulleted list.
Ideally this would be a configuration in the in-built eslint rule `no-undef-init` instead of a separate rule, but wasn't accepted by maintainers. Hence, it's an external plugin.