Being humans, we rarely learn things linearly. No one begins their JavaScript journey by reading the TC39 language specification line-by-line like a pedantic masochist.
let banana = "banana";
let apple = "apple";
console.log(banana);
console.log(apple);
Instead we all cobble together a good-enough understanding, leaving holes here and there to fill in later.
So far I’ve stumbled along without 100% grokking prototypical inheritance, or how call, apply, and bind work on functions.
It’s fine. Stuff mostly works. Until it doesn’t ¯_(ツ)_/¯
But at some point, it’s useful to stop stumbling about and peek back at those holes.
Tyler Clark ’s egghead course on Advanced JavaScript Foundations that was exactly that hole-filling opportunity for me.
As usual, I drew some notes…
Want more illustrated notes on web development?
Take a look at [[JavaScript’s …spread Operator]], [[Building Custom React Hooks]] or [[Fixing Common Git Mistakes]]