Andy Harris
This book not only teachers JavaScript - a great programming 'gateway' language - it also teaches readers the fundamental programming concepts they need to grasp in order to learn any computer language. Plus, it uses game creation as a teaching tool. The goal of the series is adaptive learning. Readers will be able to utilize these skills when learning their next programming language.
JavaScript Programming for the Absolute Beginner (For the Absolute Beginner (Series).)