A lot of Frontend Developers nowadays are using all kinds of JavaScript Frameworks (or libraries), and it makes the life of all developers a lot easier. They give us a lot of code we can use to build awesome products.

JavaScript Frameworks & Libraries like AngularJS, ReactJS, jQuery, BackboneJS, Underscore, EmberJS, can give you the feeling like you master all the superpowers of JavaScript. jQuery gave me that feeling when I first started!

But is that true? Do you master all the superpowers of JavaScript, thanks to these Frameworks & Libraries? Or do you just copy all the code from Github, Stackoverflow or other websites, and hack your way around? Answer that question honestly for yourself.

I didn’t know JavaScript!

From my own experience, I can tell, when I started with jQuery myself, I didn’t understand JavaScript at all. That is my conclusion now can I look back at the time I started.

I started with implementing the fancy content sliders with a jQuery plugin. At that time, I copied the code from the examples, played with it, pasted into a document ready function and I had a fancy content slider. I had quite some fun with it, I feel like I could do more than just HTML & CSS.

But after a while, I had bugs and didn’t know how to fix them. Error’s like …. is undefined etc. Or the slider wasn’t working anymore. I had to ask my colleagues to help me out, the fixed it for me in a second.

While the helped me, I didn’t understand what the did, to make it work.

Back to the (JavaScript) basics!

At this moment, I see that I had a lack of knowledge of programming and JavaScript basics at the time that I started with jQuery. A few years later I knew jQuery a lot better, yeah jQuery, not JavaScript!

The best thing my mentor told me, Ray if you want to be better with jQuery, AngularJS or other Framework/Library, you should go back to the basics. I thought, back to basics, yeah right ( that was what I thought at that moment )! Because I wanted to work with AngularJS.

I thought that I was losing time if I did go back to basic JavaScript. I didn’t listen to his advice. I started with AngularJS! ( hell yeah )

Well after a few days I told my mentor I didn’t listen to him. Because I was stuck with a thing with AngularJS I didn’t understand. He laughed his ass off! ( From the start he knew that I would come back to him )

Off course, he helped me right away. Told me to search for a JavaScript basics course. And advised me to read a the “Head first JavaScript” book. He was also very kind to explained me some basic and medium advanced concepts of JavaScript, that I needed to know to master AngularJS. When I started with the course, reading the book and really started to understand JavaScript. Then the fun part started for real!

The fun part

After a few challenges and some extra youtube video’s, I was really diving in Vanilla JavaScript. I left jQuery behind and started with challenging myself with doing DOM manipulation with just JavaScript.

I won’t say that jQuery is bad! But for me, it stimulated my learning curve to learn real JavaScript. I learned a lot of new things and it was FUN! I would advise the same to those who find out the don’t really understand JavaScript.

JavaScript Frameworks & Libraries as tool

When you know all the basics of JavaScript ( If you scroll down, you will find a list, with the thing you should know before you start with these frameworks ), you will start seeing the Frameworks and Libraries as tools, to make your life as Developer better and hopefully easier. Then they will help you to build application’s faster.

But If you will get a bug in your application, and your knowledge of JavaScript is good, you can fix them much faster. Of course, you always have times that it will cost you hours of debugging, but that happens to the best!

What JavaScript basics do you need to know?

I think a lot of Developers have different opinions about this, so I will share mine. If you have some additions, please share them in the comments.

I think if you understand all the things I listed below, you are ready to see the Frameworks & Libraries as your tools. Maybe you don’t know all the JavaScript concepts directly, but it can happen you know what it is, but didn’t know the word 😉