Recently I started checking all various JavaScript style guides and I liked Airbnb the best.
However, when I configured ESLint with Airbnb style guide, I noticed that some rules defined in their docs are not checked at all. For example:
- Group all your
consts
and then group all yourlets
. - Use shortcuts for booleans, but explicit comparisons for strings and numbers.
- Use
//
for single line comments. Place single line comments on a newline above the subject of the comment. Put an empty line before the comment unless it’s on the first line of a block.
So, if you take this code as an example:
const array = [1, 2, 3, 4, 5];
let foo = 'foo';
const bar = 'bar';
if (array.length) {
console.log('Foo:', foo);
// Changing foo
foo = 'baz';
}
The linter should throw 3 errors:
- I didn’t group all consts and then all lets, I defined them sequentially.
- I didn’t use explicit comparation in if statement –
array.length > 0
- I didn’t add new line before my comment
However, linter does not throw any error. Does that mean that eslint-config-airbnb-base does not include all rules that Airbnb style guide suggests?