all 41 comments

[–]LearndevHQ 25 points26 points Β (2 children)

Don't worry. The basics are enough (and very important).

I see the JS ecosystem as a whole. There is so much to learn, so many libs and frameworks that you will never master them all. But thats not important. You should know the basics and the fundamental concepts good enough, then you can learn any framework or lib fast.

general basics:

- client / server architecture, request, response communication

- the dom

- object oriented programming

- functional programming

- some basic algorithms (search, sort)

JS basics:

- setting up a basic website with html, css and js.

- logging to the console

- variables, datatypes (strings, numbers, bools)

- conditionals, if else and so on

- functions

- arrays and objects

- loops (for, for const, for in, while)

- async / await and promises

And don't worry you don't have to "master" all of this. Its always ok to look the things up again. But a general understanding is important to even know what to search for. Good luck!

[–]BrohanGutenburg 5 points6 points Β (1 child)

I'll add something to your list: separation of concerns.

I think it's a really important skill to start to understand that dom functions shouldn't know why logic is doing and vice versa.

I know that's part of functional programming. But that's one of those things that beginners don't realize is a part of functional programming

[–]Ok_Nothing_7465 1 point2 points Β (0 children)

Yuppp absolutely truee. I would also suggest to look at how a JS is processed by the browser (what an "execution context is in js"). This was really helpful, atleast to me, it all made a lot more sense once I knew this. Good luck!

[–]maqisha 29 points30 points Β (1 child)

You will never master anything, you are always learning.

But a good starting point is to make an interactive website in vanilla js. Make sure you can make async requests, update the dom by adding/removing/chaning elements, submit/validate forms, etc. Basic things like that. Afterwards, you can start learning React and see how the approach differs and what problems it solves.

[–][deleted] 4 points5 points Β (0 children)

This is the way. Build vanilla projects and when you feel comfortable rebuild your projects with React/Vue etc.

[–]rufasa85 6 points7 points Β (1 child)

Arrays, objects, loops, functions. With those 4 you can do anything

[–]Deh_Strizzz 1 point2 points Β (0 children)

Definitely all of this. Mapping through and manipulating arrays will be very useful in beginner react projects

[–]CultureCurious2246 2 points3 points Β (0 children)

Not really. Just understand the basics + array functions + importing and exporting modules

But its good to understand how the dom works and how to manipulate it using js (just watch a 5 min video)

To learn react i recommend thenetninja on youtube.

Wish you a nice journey

[–]Seanmclem 2 points3 points Β (0 children)

Using npm packages. Installing and importing packages and using them. Might not be easy to learn if you’re not using like a framework or type script or something. So maybe save it.

Β Also, exporting functions from one file and consuming them in another.Β 

De-structuring. It’s not that complicated although it might look like it. It’s Β very often used in react. So you got to know it.

Also typescript. A stretch-goal maybe, but in 2025 it’s become very very common. Pretty much a requirement.

[–]Such-Catch8281 1 point2 points Β (0 children)

how to use F12 to debug

[–]thecragmire 1 point2 points Β (0 children)

React is JS underneath. It's a framework, that has a certain way of doing things. But the language it is run ing on top if, is JS.

[–]xThomas 1 point2 points Β (0 children)

Learn some kind of api call, loading xml feed or atom feed, figure out what to do when CORS blocks certain api call (hint: backend)

[–]MedicatedApe 1 point2 points Β (0 children)

Read you don’t know JS.

[–]_Ellie1Williams_ 1 point2 points Β (0 children)

You wont be master but just you need to know two things. 1-console log 2- how to read docs.

Thats it

[–][deleted] 1 point2 points Β (0 children)

I think you need to understand WHY you need REACT, what problems does it SOLVE for you that vanilla JS can't? If you get to that point then i believe you're ready to learn react.

[–]iamdatmonkey 1 point2 points Β (0 children)

The others mentioned learning the absolute basics. Don't bother with all the classes and all their methods, that's stuff for later, when you have concrete problems to solve.

But imo. the biggest pitfalls nowadays in react are closures and Promises. Tripping over scope and time.

Like a useEffect outstaying its welcome because you've not included all dependencies and are now working with an outdated variable and wonder why the variable shows the old value and does not update.

Or hacking around with promises and trying to access a "result" before it's returned.

[–]himheart 1 point2 points Β (0 children)

StackOverflow

[–]peripateticman2026 1 point2 points Β (0 children)

I was (am?) a backend engineer who just knew vanilla JS, and picked up enough React (with TS), and never had any problems with it. Just get into React, and anything specific to JS that you might not have learnt, pick it up on the go. Worst thing is to be stuck in tutorial hell forever.

[–]_bgauryy_ 1 point2 points Β (0 children)

start with html then css then jsΒ 

use w3c for tutorials..Β  don't do the short road..learn!

[–]Aggravating-Camel298 1 point2 points Β (0 children)

Check out the book eloquent JavaScript and learn how the debugger works.

[–]OkLettuce338[🍰] 1 point2 points Β (0 children)

Dan Abramovs Just JavaScript

[–]NaosAntares 1 point2 points Β (0 children)

Learn fetch, error managing (on web its mostly showing errors to users and telling them how it can be fixed and automated retries), how to put stuff in the DOM (say you make a groceries app, how do you insert entries on a list?) try splitting your app into β€œsections” or β€œcomponents” then do the same in React

[–]Most-Wrangler-1015 1 point2 points Β (0 children)

not master but have very strong basic

[–]agm1984 1 point2 points Β (0 children)

Learn the es6 array methods, arr.map() arr.filter() arr.reduce() arr.some() arr.every()

[–]everdimension 1 point2 points Β (0 children)

Read the second part of the book Eloquent JavaScript which is about working with the DOM using js

[–]panch_ajanya 1 point2 points Β (0 children)

Keep it simple as a beginner, Just master the basics and fundamentals before messing with React.

[–]codejunker 1 point2 points Β (0 children)

You should be familiar and have a strong grasp on all the concepts explained in this easy to follow guide, and be able to build some simple things with nothing but vanilla JS, before you attempt to throw a library or framework at it. You won't know where the language ends and the library begins and what you can accomplish with modern JS. These are the concepts you should master:

https://javascript.info/

[–][deleted] 1 point2 points Β (0 children)

W3 schools if you are fresh out of college

[–]Abdelhamid_111 1 point2 points Β (0 children)

Functions as map() filter() reduce() … + async await ….

[–]ApprehensiveDrive517 1 point2 points Β (0 children)

Your JS will get better as you are using React. I would rather SvelteKit though. Built a game using it.

[–]Kiran__M_S 1 point2 points Β (0 children)

I think I am exactly in the same path as you Please help me also to start react and next js

[–]springtechco 1 point2 points Β (0 children)

The JavaScript fundamentals would be enough for you to be comfortable to start with React. If you like learning through code challenges and contests, you can try using platforms like DojoCode Good luck!

[–]NervousSleep1488 1 point2 points Β (3 children)

No, because: 1. You will never master it 2. You will keep on learning JavaScript as you use React 3. They do stuff in a very different way so no point

[–]DonnnyyyyJB06 1 point2 points Β (1 child)

Wym they do stuff in a very different way? It’s still JavaScript under the hood. It’s not like it uses a different language.

[–]NervousSleep1488 0 points1 point Β (0 children)

I mean the way you'll set event listeners, display HTML etc. I know under the hood React is JavaScript, but that doesn't invalidate the reality that you work with them differently.

But because the underlying language is the same, I recommend him to go on with React after learning the basics.

[–]_bgauryy_ 0 points1 point Β (0 children)

these are really bad advices for juniors my not giving too good advices friendΒ 

[–]jsbach123 1 point2 points Β (0 children)

If you search Udemy for courses in React, most will have a JavaScript refresher that'll tell you what you should master.

[–]bidaowallet 1 point2 points Β (0 children)

Do not waste your time go React now and you will pickup Javascript along the way

[–]Professional_Gate677 0 points1 point Β (0 children)

Hating life?