Commit Graph

530 Commits

Author SHA1 Message Date
Jordan Harband
a86d546c61 [Docs] remove yet another wrapped-string "good" example 2016-09-16 16:12:06 -07:00
Harrison Shoff
bd5505b727 [commas] fix traling comma link 2016-09-14 09:42:44 -07:00
Guillaume Verbal
6cdda0737e [guide] Fix typo from #1058 2016-09-12 19:08:10 +08:00
Alexey Raspopov
2a28b9c82f move #variables--unary-increment-decrement to correct section 2016-09-12 10:06:15 +03:00
Guillaume Verbal
7da28d43ad [Docs] update 8.3 to fix conflict with 6.2 (fixes #1058) 2016-09-12 12:18:59 +08:00
Joe Lencioni
ff69c8cb35 Prefer https over http
I checked all of the links in the JS style guide document and converted
as many as I could to use https.
2016-09-08 08:39:18 -07:00
Joe Lencioni
25123199dc Add JavaScript Air to list of Podcasts
It probably wouldn't be a bad idea for us to make a full pass on
updating the resources section, but I noticed the podcasts portion was
missing JS Air.
2016-09-08 08:29:10 -07:00
Joe Lencioni
68b7aeb6dd Add rule about TC39 proposals that haven't reached stage 3
There has been some confusion around which language features should be
used and which should not be used yet. We have a pretty clear-cut rule
at Airbnb about this, which is do not use any TC39 proposals that have
not reached stage 3.

I considered putting this at the very top of the document, but I spotted
this section that seemed to fit.

Addresses #1057
2016-09-08 08:19:27 -07:00
Joe Lencioni
e6782493f3 Update ECMAScript 6 heading to match TOC
I plan to add some information to this section that applies to ES6 and
everything following ES6. Since we already list this as ES6+ in the
table of contents, I figured it would be a good idea to make this match.

I preserved the anchor to avoid breaking links for folks.
2016-09-08 08:11:32 -07:00
Jordan Harband
ccd18f8b40 [guide] Update declarations section to prefer expressions.
Fixes #1008.
2016-09-06 23:08:36 -07:00
cshg
9abe878941 Fix header link to Classes & Constructors from ECMAScript 6+ Styles 2016-09-07 11:30:58 +02:00
scott stern
55d044c7c1 [eslint config] [base] [breaking] Add no-plusplus in style.js and added explanation in README. 2016-09-06 11:59:01 -07:00
Joe Lencioni
71a2b12262 Add CSS-in-JavaScript section
We have been writing CSS in JavaScript and have developed a set of best
practices around this type of thing. I thought it would be nice to
publish this document alongside our other JavaScript style guide
documents.
2016-09-01 09:49:21 -07:00
Jordan Harband
3a7210eac1 [guide] remove subtle endorsement of JSDoc-style commenting. 2016-08-31 21:54:51 -07:00
Heejong Ahn
6944be009c Fix a typo in commas section
Example code block following blockquote(line 2223) was broken as a line break was missing. So I just added single blank line.
2016-08-28 23:09:11 +09:00
Harrison Shoff
1541503fd4 [7.1] add link to fn names discussion. fixes #794 2016-08-25 21:48:31 -07:00
Jordan Harband
21846f6da0 [guide] fix “long lines” example to not include strings.
Fixes #1027.
2016-08-23 15:07:42 -07:00
Jordan Harband
f1fedfa7ca ES2015 2016-08-18 23:08:45 -07:00
Joe Lencioni
39d5559b9a Remove misleading reference to one-var eslint rule
This eslint rule does not enforce this style guide rule. I believe that
referencing it here will cause people to believe that this is enforced
via linting when it is not. As far as I know, there is no rule that
currently enforces this, but it would be nice to add one.
2016-08-18 10:35:23 -07:00
Olivier G
41623039e8 Typo : text link to 13.5 was not working (#1020) 2016-08-18 08:33:23 -07:00
Aniruddh Agarwal
b126016410 Add section on variable assignment chaining 2016-08-18 13:48:58 +08:00
Gerardo Renovales
e92eaef4e2 Update README.md
Add M2GEN to the list
2016-08-17 19:46:55 -04:00
Maxim
646fa70f59 Update README.md 2016-08-08 11:14:05 +03:00
felipethome
31265099af [guide] Simplify the examples of 'apply vs spread' topic 2016-08-05 18:38:35 -03:00
felipethome
c7d34b526a [guide] Add a topic about spread operator vs apply 2016-08-05 11:52:41 -03:00
felipethome
030598db09 [guide] Add ESlint rules to 'always use const' and 'decriptive variable names' topics 2016-08-04 14:13:12 -03:00
Joe Lencioni
dc7e7e77f2 Reverse rule on string concatenation for long lines (#995)
Broken and concatenated long strings are painful to work with and
produce less readable and searchable code. I think we should reverse
this rule.

Unfortunately, the max-len rule currently does not allow for this, but
there is currently a proposal to add an option to ESLint's max-len rule
that would allow for strings to be ignored.

  https://github.com/eslint/eslint/issues/5805

There have also been discussions around performance of string
concatenation (https://github.com/airbnb/javascript/issues/40), but I
don't think that is very relevant here so I removed the links to them.
2016-08-04 09:53:09 -07:00
Joe Lencioni
6d2fc89bd1 Add template literal "bad" example to single quotes guideline
There has been some confusion around whether we should use single quotes
or template literals. To help avoid this confusion, I am adding a "bad"
example to the single quotes guideline. This rule is already enforced by
the quotes linter rule.

Generally, we want code to clearly express developer intention. Using
template literals communicates that you intend to use some of the
features that template literals offer (e.g. interpolation).

Fixes #992
2016-08-04 09:38:12 -07:00
Joe Lencioni
bfc842e3ad Remove rules about reserved words
In 53b4173b we removed the ES5 guide which contains a lot of guidelines
that are no longer very relevant for us. Similarly, some folks have
raised the relevance of these rules about reserved words, given that we
are now living in an age where ES3 support has mostly waned and
transpilers such as Babel are widely adopted and pave over these issues.
This seems like a good opportunity to simplify.

Fixes #61
2016-08-03 14:41:16 -07:00
felipethome
f0b31960d3 [guide] Add eslint rules to function declaration and function constructor topics 2016-08-03 16:20:22 -03:00
felipethome
f94f6e21c6 [guide] Add eslint rule to spacing in a function signature topic
[guide] Add eslint rules to spacing in a function signature topic
2016-08-02 20:49:54 -03:00
Jordan Harband
6454839e76 [guide] Use var in reserved word examples, since they refer to untranspiled code. 2016-08-01 23:56:37 -07:00
Jordan Harband
53b4173b04 [guide] [es5] Remove ES5 guide and mark it deprecated.
Fixes #941.
2016-07-06 18:13:13 -07:00
Jordan Harband
a9bfee01cd [guide] Add link to eol-last rule.
Fixes #945.
2016-07-09 09:10:50 -07:00
Luke Libraro
3ad2404974 Added link to Mozilla documentation on Function.bind 2016-07-07 15:46:40 -05:00
Cédric Malard
7fb8b03714 Document for-in restricted usage
https://github.com/airbnb/javascript/issues/851#issuecomment-213834028
2016-07-06 17:00:42 +02:00
Shreevatsa
34a9f076df Minor typo: "coxcomb graph" v/s "coxcomb chart"
The "bad" and "good" diffs in section 19.2 had different text; making them the same to avoid confusion about what the difference is.
2016-06-23 10:58:12 -07:00
Jordan Harband
28a04a3a45 [docs] Clear up “confusing arrows” example.
Closes #856.
2016-06-21 22:41:03 -07:00
Michael Clawar
04138345ad Update README.md 2016-06-19 15:47:02 -04:00
Andrzej Duś
defa17e872 Added Syzygy Warsaw 2016-06-15 11:25:19 +02:00
Caleb
90f5a47c33 Updated deprecated Japanese translation link.
old: https://github.com/mitsuruog/javacript-style-guide
new: https://github.com/mitsuruog/javascript-style-guide
2016-06-13 19:15:19 +10:00
Jordan Harband
f41b4df024 [eslint config] [base] [breaking] enable no-prototype-builtins rule. 2016-06-04 18:14:02 -07:00
Wesley
3fb9db5a74 fixing broken link
Google moved their style guides to Github (from an SVN server), and this link was broken
2016-06-04 15:17:00 -07:00
Ross Kirsling
267eec57c6 Fix invalid code snippet in 23.2. 2016-06-02 10:24:30 -07:00
mifi
1db5522888 Fix typo
disallowSpacesInsideObjectBrackets -> requireSpacesInsideObjectBrackets
2016-05-26 22:54:27 +02:00
Sergii Tkachenko
199a0a700d Add DoSomething.org to the list of organizations in README 2016-05-25 17:49:40 +03:00
Jordan Harband
8e125fa07c [eslint config] [base] [breaking] Enforce proper generator star spacing.
Fixes #887.
2016-05-17 21:27:10 -07:00
Joe Lencioni
43ccc3fe11 Enable imports/imports-first rule
Since imports are hoisted, keeping them all at the top prevents
surprising behavior.
2016-05-17 09:14:48 -07:00
Joe Lencioni
d68a067f2b Prepare to enable import/prefer-default-export
This was recently added to eslint-plugin-export. It enforces that
modules that only have a single export use a default export instead of a
named export. Since this is a breaking change and we want to cluster
breaking changes, I marked it as 0 for now with a TODO to enable when
that time comes.
2016-05-12 15:21:07 -07:00
Felipe Vargas
b660d4cc3f Add semicolon in arrow functions section 2016-05-08 18:15:41 -04:00