Personally, for me, it's been JavaScript. I started freelancing with PHP. The second to last freelance project I had was Java backend with AngularJS frontend, and the tricky bits were all in the frontend. Now I've been working freelance for the same company on several projects since June, doing 100% JavaScript; mostly frontend, with bits and pieces of nodejs, grunt and so on for tooling.
To get off to a good start I suggest learning how encapsulation and modules are done in JavaScript (e.g. prototype, the module pattern, possibly also node's exports or something like requirejs). This will allow you to actually build large JavaScript projects without them turning into a Frankenstein's "everything in a single file in jQuery's document.ready" monster.
Try to focus on learning the language and its features and not get lost in DOM-land (use libraries or your framework of choice for manipulating the DOM unless you have a very good reason not to).
Learn all about how to read and manipulate data using XmlHttpRequests, web services, REST, JSON and so on. This will be invaluable for any projects that have third party dependencies, which will be most of them these days.
Spend a little time learning about which frameworks are better for rich desktop-style browser apps (hint: probably the bigger ones, like Angular or Ember), and which are more suited to lightweight apps that will also run nicely in mobile or other embedded devices (hint: probably the smaller ones, like Backbone).
Polish your jQuery knowledge. It will be popular and useful for a long time yet, and it's a big library with lots of extremely handy functions and features.
Maybe pick up other useful "utility" libraries like underscore.
Finally, if you're interested in driving code quality and keeping clients happy and regressions at bay, I suggest you look into automated unit and integration testing. Again here there are large, complicated tools like karma and smaller, lightweight "test logic only" libs like jasmine. If you're like me, you will get lots of enjoyment and satisfaction figuring out how to wire up node, grunt, jshint, phantomjs and (your test lib of choice) to get a single command build/deploy/test script. If you're likely to work in a team, get that script running in a CI server for bonus points.
If you have any questions hit me up on davedx@gmail.com, happy to help! :)