I picked up this book before I went to school so I could get a good foundational idea of how JavaScript works. It really is an excellent book for learning. This was something I read once I started working professionally. I had a better idea of real world code (less academic than a lot of these reference books but useful when you want to do deep dives)

There’s another book Learning JavaScript Design Patterns (2012) was more fundamental for me after learning jQuery very well and wanting to expand my front-end development knowledge.