A collection of all JS-related resources that has helped me get a better understanding of all things javascript.
- General Javascript, NodeJS, V8, etc i.e. call stack, event loop, callback queue, job queue, render queue
- Writing Javascript
- Functional Programming
- Testing
Understanding Event Loop, Call Stack, Event & Job Queue in JavaScript
A great article explaning JS event loops, call stack, event & job queue in JS. Also explains how Promises and setTimeout, setInterval is handled by these.
What the heck is the event loop anyway? | Philip Roberts | JSConf EU
An amazing talk from Philip Roberts in JSConf EU 2014. He gives a great explanation of JS event loops, call stack, event & job queues and how all of these integrates with one another.
Understanding Deep and Shallow Copy in Javascript
A great article explaining how deep and shallow copies work in Javascript, with some great examples and imagery.
wtfjs - a list of funny and tricky JavaScript examples
Great repo showcasing all the weird and tricky things JavaScript does i.e. for resolving certain expressions (![] + [] // -> "false"
)
Great article on github created by Ryan Mcdermott. Pretty much discusses best practices in writing clean javascript code - talks about principles such as SOLID, SRP, etc.
Based off "Clean Code Javascript", but obviously, ported over for Typescript.
Learning Functional Programming with JavaScript - Anjana Vakil - JSUnconf
An awesome talk by Anjana Vakil in JSUnconf 2016. Gives a very soft introduction to the functional programming paradigm and how it differs from paradigms such as imperative and object-oriented programming.
Anjana Vakil: Immutable data structures for functional JS | JSConf EU
Another great talk by Anjana Vakil in JSConf EU 2017. Here, she explains the importance of immutability in functional programming, and data structures we can use to implement and optimize this "immutability" i.e. instead of just copying & duplicating entire arrays or objects in memory.
Mostly Adequate Guide to Functional Programming
A great book that goes into some depth for functional programming concepts. Haven't had a proper read (in the bucket list), but from an initial skim, looks like a great read.
A practical guide to writing more functional javascript
A step by step guide to convert imperative JavaScript to more declarative, functional JavaScript. This article specifically covers the use of composition in a real-world case
Javascript & NodeJS Testing Best Practices
Some great points of "best practices" for writing solid js & nodejs tests that's lean, agile and provides great test coverage