Learning JavaScript

I want to properly learn JavaScript to improve my front-end developer skills. I've been using HTML and CSS for over a decade with my themes and my websites, but I feel like JavaScript is the missing piece of the puzzle. Nowadays there is no need to buy a book if…