Why is Javascript so hard

why is it so hard that i can’t even understand anything.


Study it day after day, without hurry. Make it a habit. You will see how little by little you will understand. This is how we learn, by repetition. Cheer up.


Hi, @X-hibit,

I understand your pain. I went through this as well. I thought that I won’t make it as it took me about a year to learn it.

My advice - Remember that it is the same thing as learning a foreign language. It takes time, a lot of effort, and commitment. Try to find a comfortable pace and to have fun along the way.

P.S.: If you need support, don’t hesitate to PM me. I do live coding sessions from time to time.


thanks alot, anytime i get confused, i will PM you. i really appreciate.


JavaScript can be pretty challenging, but it’s not that hard if you put your mind to it. If you cannot handle JavaScript yet, that’s totally fine.

  • If you cannot handle the syntax yet, that’s ok, try another language with simpler syntaxes like Python.
  • If it’s just hard in General, take a short break then get back to it slowly. Try not to force yourself to it. The more you force yourself, the harder it will become.

Here’s a little tip, when you work, you start to slowly get into a focus state called the flow state. When you are in the flow state, you are focused on what you are doing. But getting into the flow state isn’t really that easy to notice. It just happens without you knowing it then you will get tired when you’re out of it.

You cannot get stressed over it. Again, if you’re overwhelmed take a break. If you want to extend the length of your learning session, try doing it with something calming like listening to music.

Anyway, hope you can get through it. Happy Coding


thanks alot, if i still cant understand anything after two days, i will switch to another language


Javascript isn’t easy for sure. But stick with it you will get it. Writing things down surely helps me. When you get stuck leave it and do something fun. Then return and try to tackle it from a different perspective. Using google to get deep explanation on what a particular tag or function mean really helps. My advise stick with it! Each day you will learn new things. FCC gives you alot of stuffs at first but as you go they revisit some of those stuff and better explain it to you.

Just be optimistic! If you could pass through HTML and CSS. You definitely will be able to get JS too. You can also PM me if you get stuck will love to help!


Break it into smaller pieces. As you learn a lesson, maybe do a little program of your own to reinforce the concept. You can find out how to open up a node environment on your computer or mess around with online tools like codepen or jsbin or whatever.

1 Like

That just isn’t the right approach to take if you ask me.

Unless you have mistakingly and unknowingly picked some super exotic language as your first starter language switching languages that soon isn’t going to help you learn to program.

The worse you can do when first starting out learning programming is to put too much emphasis on the language and not enough on the fundamentals found in all languages.


Well if it is the first programming language you learn, yup, you may face some difficulties understanding the concepts, and it is normal, but it is not really that hard, just a little bit of patience, try not to rush things up and take it easy… you are not alone, we all face that feeling of uncomfortability when trying to learn a new concept. And i think it is a good idea to have a look at Algorithms first before learning a programming language.

1 Like

Wait? How long have you need trying? This stuff is hard and takes time.

I would recommend looking online for any specific subjects that are giving you a hard time. There are some great youtube videos out there. And ask the forum - I guarantee that there is no question that there aren’t another 10 people there just too chicken to ask. Just be very specific with your question - it improves the quality and quantity of answers.

1 Like

Why is JavaScript so hard

Because it is hard.

It takes time, practice, grit, and a lot of googling to program and this assumes you know what your doing! If your learning it from scratch it takes all of that and then some. This doesn’t mean you need to be some kind of super genius, but you do need to put in the effort, time and grit to figure it out. It isn’t a quick fast or totally painless process (WHY DOES MY CODE NOT WORK!!! oh its a typo :upside_down_face: ) but it can be very rewarding.

Learning something as complex as programming is a process that requires those things day in and day out basically forever. If your OK with that, then your well on your way!

When starting out learning how to learn the content is just as important as the content itself. Simply put there is a lot to learn, and new stuff to learn every day. Knowing how to break things down to as small chunks as possible by grinding down the problem systematically so you can destroy it learn it is how you sustainable learn. Taking “to big of bites” when given a problem ends up creating more problems down the line as you lack previous concepts. This is why trying to memorize everything, or “write everything down” doesn’t get you too far, since there’s to much content.

When presented with a new concept don’t take it for granted, learn about it from different angles. Different sources. Its easy to end “down the rabbit hole” finding a buncha new things to learn/understand, but all that just gives you more context to the grand scheme of things.

When presented with an issue with the code, determine what it is doing, as “failure” can teach you just as much if not more than success. If your code doesn’t work after 500 attempts, you learn 500 approaches to do something wrong! If you just got lucky the first time you only learn 1 thing. It could be day 1 or day 1 million, the process is the same, just the context might be different.

Embrace the process, and accept it for what it is and keep grinding away knowing that is programming.

Good luck, keep learning, keep grinding, keep getting annoyed and frustrated, and keep overcoming your issues and embracing the awesome moment when your code finally does work!


Languages are a bit like instruments. So is switching them for the wrong reasons.

You pick up a guitar for the first time and it seems impossible to use your fingers like it wants you to. So you sit down in front of a piano instead hoping your fingers will be less stupid. When that doesn’t work you sit down in front of a drum set only to realize you do not have any rhythm. Now you pick up a microphone and try to sing, but it sounds awful.

So now what do you do? Just keep going until you magically find something you are a “natural” at? Or do you just pick something a stick with until you learn it?

I recommend you read You don’t know JS series books from Kylie Simpson. Those are great.

I would suggest you kindly give an hour or two on youtube and watch videos to understand the basics of a programming language. or basics of javascript itself. Videos can be an excellent aid for beginners. And then come back and practice the same here.

I would suggest that you take your time, getting through HTML and CSS took you time, this will too, but it’ll be worth it. Anyways, once you finish JavaScript and Data Structure, you will learn front end libraries, which will simplify your work by large, I am also learning JavaScript.

Better to execute some code and read some code by other developers for better understanding easily. if you ok, I share some books for JavaScript.

kindly share those books

1 Like

As in anything else, you need a mix of sheer memorization and practice.

“JavaScript” on its own, nowadays, means nothing.
JS is the core language of an increasingly wide range of applications.
So I think that you need to know your target first of all.
Feel the fun of it.

Say you want to achieve a level “X” within 6 months.
Plan accordingly and gradually, mercilessly but reasonably.
You can achieve any result you want.


your advice is very great one for any programming language that any one aims to learn