Understand the nitty gritties of the language by actually looking at code snippets and asking the right (or wrong) questions - the whats, whys and hows. The repository is a collection of code samples containing working explanations.
There is no particular list/order as of now, but here are the concepts and not so obvious language features/behaviour we are planning to include eventually.
- Functions
- Objects and Arrays
- Scopes and Closures
- Prototype inheritance
- Bind, Call, Apply and this variable
- Functional programming concepts
- Promises and async programming
- Iterators and Generators
- ES6 specific features
- Coersion
- Common Patterns
First things first, this is not a replacement for conventional learning by books, blogs and countless experimentations. This is just an add-on to the exisiting set of learning paths. We realized, the best way to validate our understanding about the language is to discuss with fellow members, brainstorm and educate others.
This is a result of IM group chats within our team at work. We thought it might be helpful to the community as well, hence this repository.
Yes and No. Perhaps the code snippets are all there already, or you may find a variation of these. However, the approach is unique as we have a Q&A format and a way of clarifying things through explanations given to the working of the snippets. The content and the code examples will have appropriate attributions wherever applicable. We would really appreciate an attibution from you, if you are using/including any of this repository code examples within your work.
If you find (and believe) any information available here is erroneous, please report them as issues or create pull requests. We are all ears for additional suggestions, feedback and new content as long as it follows the format that we are using. You can also star this repo if you like the content. :)
Most of the code samples are either in .md
or .js
files. The markdown file format follows the question, answer and explanation format. If there are any usful references, links or attributions, we put them too.
We would like this repository to grow and be the one-stop-repo for all the JavaScript enthusiasts. For that, we would need all the help we can from the community and people like YOU.
List of initial contributors.
Contributions on the GitHub Repo can be looked at here.
- Organize the items by categories and provide the links/index them.
- Include jsfiddle links for the code samples
- Include samples explaining ES6 features.
The content of this project itself is licensed under the Creative Commons Attribution 3.0 license and the underlying source code used to format and display that content is licensed under the MIT license.