Although, in general, mastery of a programming language takes a long time, there are a few methods you can use to accelerate the process. Reading other peoples code is the most assured way of advancing your beginner or medium level Javascript skills. It is very similar to what writers do to advance their craft; they read a lot of other books written by masters in the field.
Most developers these days are limited to just stitching together frameworks and libraries that were built by others and do not even bother about checking how those frameworks and libraries were implemented. Although it is good knowing that you do not have to reinvent the wheel, it is best to know why the code you use is conceived, and how it is implemented and structured and see if if you can pick up any new patterns from it.
Doing that will help you learn development patterns from other well experienced developers. Especially if you debug the code line by line or even just write out each line on your own editor and test what each line does using your debugger, you will be able to learn a lot.
I have come across a good online resource called microjs (http://microjs.com/#) that has a collection of small libraries which will help you start your journey in advancing your javascript skills. The fact that the libraries are all written in pure javascript and do not have third party dependencies will help you not get distracted and focus on learning their core implementations. Most are also very short so you won't get bored too much reading so many lines of code.
Go to the Github repository of each library and look at the source code and see how the code is structured. Pick apart the functions, methods, and properties and learn what each does and how it behaves in its interactions with the other methods and properties.
Hope this helps.
A couple of repositories I liked going through:
https://github.com/stackp/promisejs
https://github.com/dkraczkowski/collection.js
This is a good resource. Thanks!
This post has been upvoted from me! 🙂
Please vote me back, thanks!! Have a great day! 🙂 🙂
This post recieved an upvote from minnowpond. If you would like to recieve upvotes from minnowpond on all your posts, simply FOLLOW @minnowpond
This post recieved an upvote from minnowpond. If you would like to recieve upvotes from minnowpond on all your posts, simply FOLLOW @minnowpond