JavaScript is a good language to learn; the inescapable force of the web is going to be a big driving factor long beyond the plethora of app stores. The web is the only unifying force in all of these closed systems.
Learning JavaScript will teach you the fundamentals of many other programming languages, particularly C-style ones, like PHP, Ruby and Java.
My only warning is that it will take a self-motivating force to learn how to code JavaScript _properly_. It is a language that is easy to shoot yourself in the foot with, and especially easy to shoot the users in the feet with. Too many website depend on JavaScript when they shouldn't, and too often use JavaScript as a work around for their lack of knowledge of HTML. My advice is that if you are going to learn JavaScript, also make sure you learn HTML, properly. camendesign.com/… Try not fall into the trap of JavaScript programmers who have to write a million lines of unmaintainable JavaScript just to solve every little problem.
Learning to make websites and learning how to design them well are two different things. When I started out playing with the web in 1996, my early attempts were just produced in Microsoft Publisher, and then Frontpage. You can see one of my very early sites here: commodoreweb.camendesign.com (800x600 please!)
The key to learning is having a reason already apparent to learn. I find learning for the sake of learning very difficult. When I started learning how to write HTML by hand I wanted to do so to write a website to hold my Visual Basic code (named Vacant Brains), a screenshot of which is here: camendesign.com/…
Now, my first foray into JavaScript was to create the "Office Assistant" like animated character in the corner of the site (different selectable characters!). Bad idea, yes I know, but then that's why I say programming and design are not learnt at the same time. I was at college at the time, so I had the benefit of someone explaining to me the very basics of JavaScript for an hour. I then went off and spent the next 31 hours straight coding. To me, JavaScript opened up the possibilities that I had imagined, but could not piece together out of HTML alone. So, the realisation of what you can achieve _because of_ a technology being present is what matters. It is a tool in which enables the implementation of a greater idea; that is, not coding just for coding's sake.
First of all, you must imagine what it is you want to create with the web. What itch needs scratching, what problem needs solving, &c. Something that personally motivates you and drives you. Even if you're not sure how you would even make such a thing, do not restrict your thoughts because of that.
Once you have something that begs to be built, then you will have the necessary driving factor to learn many aspects of web development, including JavaScript.
I used w3schools as well as Microsoft's JScript reference to learn JavaScript, but this was back when JavaScript was a simpler language and there was only one browser to write for: IE.
Now, I would recommend that you use DevMo developer.mozilla.org and Google. Sometimes you can only find the answer by asking a question, rather than browsing references.
As expected, I write in HTML, CSS, JavaScript and PHP. I also know a good deal of Visual Basic 6, and it's siblings VBA, VBScript and ASP.
I could learn more languages, but I have no driving reason to do so :P The web solves my programming needs at the moment, and it's only getting more and more capable.
The issue of learning design is a matter of awareness of the issue, personal strength and motivation to want to improve in this area, and confidence. Lots and lots of confidence. This is all that separates me and you. I am confident to say what I feel is right or wrong when it comes to design and I forge my own designs based on that confidence and not on copying other people's trends.
The difference between a designer and a mere photoshop user is that confidence and the ability to say no. A photoshop user adds, a designer takes away.