Great tips. There are many ways to learn a new programing language. every person has there own way of doing it from books , online, articles to mentoring.
I think there are some really great pluses in the options above but here are some of my recos:
For light and quick learning that is easy if you are already a developer or just have a quick mind - w3cschools has a really great library of to the point examples and articles that teach you most of what you need to know on web developement - dry - not aimed for someone that really wants to build up a new skill.
codeacadamy - is really fun i wouldn't recomend it as a only soruce of learning but it can be a great way to add "fun" into your learning as its built out as a game and is very interactive and very smart and engaging.
http://02geek.com - that's my site its mainly geared at video training - its a membership site but has a free login with facebook for one day so you can really get a feel for it. It's designed for people that want/need slower detailed trainign to take them from "non developers" to developers with over 120 hours of training and growing.
Books - really a lot of great books out there. I wrote the book HTML5 data visualization and i really worked hard on it. it has over 300 pages step by step training its not designed as an only source to learn JS not at all but more designed for people with a basic to mid level of programing that want to sharpen up there skills as they learn how to build in canvas and how to build in HTML5 creating visual things from scratch, working with open source libraries and even working with google maps and documents. I love my book but then again i wrote it but there are other great book options for starters - the link to the book is http://smarturl.it/canvas
last but not least is learning on the web in free resources such as youtube, and just doing searches there are many many free things out there. i think its a great way to learn and i use these resources all the time. With that said if you want a more dedicated staff around your learning and more detailed and invested courses i hope you check out some of 02geek stuff or my own writing
good luck! !