Zrozumieć JavaScript. Wprowadzenie do programowania
Marijn Haverbeke