PHP is the devil, its a crap language that succeeded because it was at the right place at the right time with the right price tag. Now there is a huge volume of code available for it, but that is about the only positive.
Node is the current buzz-word darling, but truth is, I am a huge fan of it. There are some huge benefits of having JavaScript on the server as well as the client. I actually did a tutorial series you might be interested in. It covers creating A simple JavaScript app using Node, cocos2D, YUI and Heroku. On top of that, I've done a series of math tutorials in EaselJS as well as a Cocos2D tutorial series. Apparently the Cocos2D api has changed again though, resulting in a few things not working. Cocos2D is one of those love or hate it style libraries.
The earlier recommendation of "The Good parts" is solid, but that book is mostly useless to you until you've used the language for a little while.
Picking up a good editor is also a big help. I highly recommend you try the 30 day trial of WebStorm, it's excellent and makes working in JavaScript a delight, especially if you are used to working in an IDE.
There are a few things you are going to have to get used to with JavaScript programming. First is the fact DOM programming is a horrible experience. It really is, working across browsers is just miserable, there is a reason people use jQuery or YUI and similar libraries.
Second, learn to think asyncronously... that is the biggest stumbling block with C++ programmers moving to JavaScript.
Third, JavaScript is not C++... it feels a hell of a lot like C++ at first, but it isn't and the faster you can come to terms with that, the happier you will be. Probably the worst part of it is the fact you can basically turn JavaScript into C++... DONT. JavaScript is a prototype based language and a dynamic ( not compiled ) language. There is a lot of power in those two traits.
Fourth, JavaScript is a horrible language. It's the kernel of an excellent language with some really really really really stupid design decisions. The book ( The Good Parts ) covers a lot of the warts and strengths of JavaScript. The biggest flaw with JS is it's wayyyyyyyyyyyyyy to easy to create a global variable or clobber an existing variable... there is no concept of namespaces, modules or private variables and it hurts the language. ( There are work arounds and changes to the language in the works ). There are languages built over JavaScript that make working with it much more pleasant, such as TypeScript, Dart and Coffeescript, but when starting out, I suggest sticking to straight JavaScript.
Fifth, embrace Microframeworks, its a common trend with JavaScript and its a very cool one. Instead of large overarching libraries that do everything and the kitchen sink, you slot in a small focused library, that work with other libraries. There are a few that you simply need to know though... jQuery is all but ubiquitous now, although I actually prefer YUI. On top, check out Underscore ( a library that extends the language of sorts ) and Require.js ( a module system... that is all but *groan* required ). I also highly recommend the previously mentioned EaselJS.
Finally, have fun. The browser is infuriating to work in, but JavaScript is a ton of fun and remarkably powerful in certain regards.