JavaScript Crash Course by Nick Morgan
A fun, practical, hands-on introduction that I wish I had when I was learning JavaScript. Readers can learn from the very basics all the way through making real games and applications that are relevant to ‘real-world’ development practices.