This is, in my opinion, the book to use to learn JavaScript at more than a surface level. The only other materials I recommend as much (but for a different level of learner) are the “You don’t know JavaScript” in-depth book series.In 2015, I was consulting for a distance learning program, administered by a major California University, that wanted to replace their current textbook (one of those “He