Skip to content
FrontendReactJs

1. React.js Kya Hai? JSX aur Components Samjhe – Beginner Guide 2026

April 14, 2026 14 min read

नमस्ते दोस्तों! 🙏
स्वागत है The Easy Master पर!

क्या तुमने कभी सोचा है – Facebook, Instagram, Netflix, Airbnb jaise websites इतने smooth क्यों लगते हैं? Page reload nahi hota, sab kuch instant होता है?

React.js Kya Hai? JSX aur Components Hindi में समझना आज के समय में बहुत जरूरी है क्योंकि:

  • India में 90% से ज्यादा frontend developer jobs React.js मांगती हैं
  • Google, Microsoft, Amazon, Uber – सब React.js use करते हैं
  • React सीखने के बाद salary 2x-3x हो सकती है
  • Freelancing में React की बहुत demand है

आज हम React.js JSX Components Hindi में इन सब topics को cover करेंगे:

  • React.js Kya Hai? – Real-world examples ke saath
  • Why React? – React vs Vanilla JS
  • JSX Kya Hai? – HTML jaise syntax andar JavaScript mein
  • Components Kya Hain? – Functional aur Class components
  • Props vs State – Data kaise manage karein
  • Pehla React App – Step-by-step banayenge
  • Real-world Examples – Practical projects

Kya tumhe pata hai?
React ke bina ek simple “Like” button bhi poora page reload karta hai. React se sirf wohi button update hota hai – baaki page same rehta hai. Yeh hai React ka magic!

तो चलिए शुरू करते हैं – React.js JSX Components Hindi सीखने का सफर! 🚀


1. React.js Kya Hai? – Introduction

React.js ek JavaScript library hai jo user interfaces (UI) banane ke liye use hoti hai।

Kisne banaya?
Facebook ne 2013 mein banaya. Aaj ye world ka most popular frontend library hai।

React.js Kya Hai? Simple words mein:

React tumhe reusable components banane deta hai – jisse tum complex UI ko chhote-chhote parts mein tod sakte ho।

Real-world Analogy:

Socho tum LEGO bricks se ghar bana rahe ho:

  • Ek brick = Ek component
  • Alag-alag bricks ko combine karke ghar = Complete app
  • Ek brick ko kisi aur jagah reuse kar sakte ho

React.js JSX Components Hindi mein yahi sikhenge – kaise chhote components milkar powerful apps banate hain।


2. React Kyon Use Karein? (Advantages)

Problem in Vanilla JSSolution in React
DOM manipulate karne ke liye document.getElementById jaisi lengthy syntaxDeclarative – tum sirf batao “kya dikhana hai”, React khud update karega
Page reload hota hai har click parSPA (Single Page Application) – No full page reload
Code maintain karna mushkil (spaghetti code)Component-based – organized, clean code
State management difficultState built-in hai – easy data management
Reusability nahi haiReusable components – ek baar likho, 100 jagah use करो

React.js vs Vanilla JS – Example:

Code
// Vanilla JS (without React)
let count = 0;
const button = document.getElementById("btn");
const display = document.getElementById("display");

button.addEventListener("click", () => {
  count++;
  display.innerText = count; // Manual DOM manipulation
});

// React JS
function Counter() {
  const [count, setCount] = useState(0);
  
  return (
    <button onClick={() => setCount(count + 1)}>
      {count}
    </button>
  );
}

React wala code smaller, cleaner, aur easier hai!


3. React kaise Kaam Karta Hai? (Virtual DOM)

JSX aur Components

Virtual DOM – React ka sabse bada magic है।

DOM kya hai?

DOM = Document Object Model – browser ka internal representation of your webpage.

Problem with Normal DOM:

Jab bhi kuch change hota hai – poora DOM recalculate hota hai (slow).

React ka Solution: Virtual DOM

  1. React memory mein ek copy rakhta hai (Virtual DOM)
  2. Jab bhi change hota hai – pehle Virtual DOM update hota hai
  3. React compare karta hai (Virtual DOM vs Real DOM)
  4. Sirf jo change hua wahi real DOM mein update hota hai

Analogy:
Socho tumhe 1000 pages ki book mein ek word change karna है।

  • Normal DOM = पूरी book re-print करो
  • Virtual DOM = sirf wo 1 page change करो जहाँ word hai

React.js JSX Components Hindi mein Virtual DOM ko samajhna important है – kyunki yahi React ko fast banata है।


4. JSX Kya Hai? – JavaScript + XML

JSX = JavaScript + XML (HTML jaisa syntax)

JSX tumhe HTML jaisa code likhne deta hai JavaScript ke andar।

Without JSX (Pure JavaScript):

Code
// React without JSX – very messy
const element = React.createElement(
  'div',
  { className: 'container' },
  React.createElement('h1', null, 'Hello World'),
  React.createElement('p', null, 'This is React')
);

With JSX (Clean & Readable):

Code
// React with JSX – beautiful!
const element = (
  <div className="container">
    <h1>Hello World</h1>
    <p>This is React</p>
  </div>
);

JSX Rules (Yaad Rakho):

Code
// ✅ Correct
const name = "Rahul";
const element = <h1>Hello, {name}</h1>;

// ❌ Wrong – JavaScript expressions ka use karo, statements nahi
// const element = <h1>{if(true){ "Hello" }}</h1>; 

// ✅ Multiple lines – wrap in parentheses
const element = (
  <div>
    <h1>Title</h1>
    <p>Paragraph</p>
  </div>
);

// ✅ className use karo, class nahi (kyuki class is JavaScript keyword)
const element = <div className="my-class">Hello</div>;

// ✅ Self-closing tags
const image = <img src="photo.jpg" alt="description" />;

// ✅ Inline styles – double curly braces
const style = <div style={{ color: 'red', fontSize: '20px' }}>Styled</div>;

React.js JSX Components Hindi mein JSX ko samjho toh React 50% already aagaya!


5. Components – React ki Building Blocks

Component = Code ka reusable piece jo ek part of UI represent karta hai।

Component Types:

React mein 2 types ke components hote hain:

TypeSyntaxWhen to Use
Functional ComponentFunction that returns JSXModern React – recommended
Class ComponentClass extends React.ComponentOld code – less common now

Functional Component (Modern Way – 2026):

Code
// Simple functional component
function Welcome() {
  return <h1>Welcome to React!</h1>;
}

// With props
function Greeting(props) {
  return <h1>Hello, {props.name}!</h1>;
}

// Arrow function syntax
const Button = () => {
  return <button>Click Me</button>;
};

// Export karna
export default Welcome;

Class Component (Old Way):

Code
import React from 'react';

class Welcome extends React.Component {
  render() {
    return <h1>Welcome to React!</h1>;
  }
}

export default Welcome;

Component Use Karna:

Code
// App.js (Parent component)
import Welcome from './Welcome';
import Greeting from './Greeting';

function App() {
  return (
    <div>
      <Welcome />
      <Greeting name="Rahul" />
      <Greeting name="Priya" />
      <Greeting name="Amit" />
    </div>
  );
}

React.js JSX Components Hindi mein components ka concept heart hai – isko ache se samjho!


6. Functional vs Class Components – Comparison

FeatureFunctional ComponentClass Component
SyntaxSimple functionClass with render()
Code lengthShorterLonger
this keyword❌ Nahi✅ Haan (confusing)
Hooks✅ Supported❌ Can’t use hooks
PerformanceSlightly betterSlightly slower
Recommended✅ YES (2026)❌ No (unless old code)

Example – Same component dono tarah:

Code
// ✅ Functional (Modern)
function Counter() {
  const [count, setCount] = useState(0);
  return <button onClick={() => setCount(count + 1)}>{count}</button>;
}

// ❌ Class (Old - avoid in new projects)
class Counter extends React.Component {
  state = { count: 0 };
  render() {
    return (
      <button onClick={() => this.setState({ count: this.state.count + 1 })}>
        {this.state.count}
      </button>
    );
  }
}

Best Practice: 2026 mein Functional Components + Hooks use करो!


7. Props – Ek Component se Dusre Mein Data Bhejna

JSX Components

Props = Properties – data jo parent component child component ko bhejta है।

Props Kaise Kaam Karte Hain:

Code
// Parent Component
function App() {
  return (
    <div>
      <UserCard 
        name="Rahul Sharma" 
        age={25} 
        city="Mumbai"
        isActive={true}
      />
    </div>
  );
}

// Child Component – props receive karta hai
function UserCard(props) {
  return (
    <div className="card">
      <h2>{props.name}</h2>
      <p>Age: {props.age}</p>
      <p>City: {props.city}</p>
      <p>Status: {props.isActive ? "Active" : "Inactive"}</p>
    </div>
  );
}

// Destructuring – cleaner way
function UserCard({ name, age, city, isActive }) {
  return (
    <div className="card">
      <h2>{name}</h2>
      <p>Age: {age}</p>
      <p>City: {city}</p>
      <p>Status: {isActive ? "Active" : "Inactive"}</p>
    </div>
  );
}

Props Rules:

Code
// ✅ Props are READ-ONLY – modify nahi kar sakte
function BadComponent(props) {
  // props.name = "New Name"; // ❌ ERROR – cannot modify props
  return <h1>{props.name}</h1>;
}

// ✅ Data flow – parent to child (one-way)
// App -> UserCard -> UserInfo -> UserAvatar

8. State – Component ka Apna Memory

State = component ka internal memory jo change ho sakti है।

Props vs State:

FeaturePropsState
Mutable?❌ No (read-only)✅ Yes
Who controls?Parent componentComponent itself
PurposePass data downManage dynamic data
Changes trigger re-render?Yes (if parent changes)Yes

useState Hook – State Manage Karne Ka Tarika:

Code
import { useState } from 'react';

function Counter() {
  // Syntax: const [value, setValue] = useState(initialValue);
  const [count, setCount] = useState(0);     // count = 0, setCount function
  const [name, setName] = useState("");       // string state
  const [user, setUser] = useState(null);     // object/array state
  
  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>Increment</button>
      <button onClick={() => setCount(count - 1)}>Decrement</button>
      
      <input 
        value={name}
        onChange={(e) => setName(e.target.value)}
        placeholder="Enter name"
      />
      <p>Hello, {name || "Guest"}!</p>
    </div>
  );
}

Object and Array State:

Code
function UserForm() {
  const [form, setForm] = useState({ name: "", email: "" });
  
  // Update object – spread operator use karo
  const updateName = (name) => {
    setForm({ ...form, name });
  };
  
  const [items, setItems] = useState([]);
  
  // Add to array
  const addItem = (item) => {
    setItems([...items, item]);
  };
  
  return (
    <div>
      <input 
        value={form.name}
        onChange={(e) => updateName(e.target.value)}
      />
      <button onClick={() => addItem("New Item")}>Add</button>
    </div>
  );
}

React.js JSX Components Hindi mein state ko samjho – tabhi tum interactive apps bana paoge!


9. Pehla React App Banayein (Step-by-Step)

Step 1: Node.js Install Karo

Node.js official website se download karo – LTS version recommended।

Step 2: Vite se React App Banayein (Fastest way)

Code
# Terminal mein ye command run karo
npm create vite@latest my-first-app -- --template react

# Project folder mein jao
cd my-first-app

# Dependencies install karo
npm install

# App start karo
npm run dev

Step 3: Folder Structure Samjho

Code
my-first-app/
├── src/
│   ├── App.jsx      # Main component
│   ├── main.jsx     # Entry point
│   └── index.css    # Global styles
├── index.html
└── package.json

Step 4: Pehla Component Modify Karo

Code
// src/App.jsx
import { useState } from 'react';
import './App.css';

function App() {
  const [count, setCount] = useState(0);
  
  return (
    <div className="app">
      <h1>Namaste React! 🙏</h1>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>
        Click Me
      </button>
    </div>
  );
}

export default App;

Step 5: Multiple Components Banayein

Code
// src/components/Header.jsx
function Header() {
  return (
    <header>
      <h1>My React App</h1>
      <nav>
        <a href="#">Home</a>
        <a href="#">About</a>
        <a href="#">Contact</a>
      </nav>
    </header>
  );
}

export default Header;

// src/App.jsx
import Header from './components/Header';

function App() {
  return (
    <div>
      <Header />
      <main>
        <h2>Welcome to React!</h2>
      </main>
    </div>
  );
}

10. Real-world Example – Simple Counter App

Code
import { useState } from 'react';

function CounterApp() {
  const [count, setCount] = useState(0);
  const [step, setStep] = useState(1);
  
  const increment = () => setCount(count + step);
  const decrement = () => setCount(count - step);
  const reset = () => setCount(0);
  
  return (
    <div style={{ textAlign: 'center', padding: '50px' }}>
      <h1>Counter App</h1>
      
      <div style={{ fontSize: '48px', margin: '20px' }}>
        {count}
      </div>
      
      <div>
        <button onClick={decrement} style={buttonStyle}>-</button>
        <button onClick={reset} style={{...buttonStyle, background: 'gray'}}>
          Reset
        </button>
        <button onClick={increment} style={buttonStyle}>+</button>
      </div>
      
      <div style={{ marginTop: '20px' }}>
        <label>Step Size: </label>
        <input 
          type="number"
          value={step}
          onChange={(e) => setStep(Number(e.target.value))}
          min="1"
        />
      </div>
      
      <p>Click step: {step} | Total clicks: {count / step}</p>
    </div>
  );
}

const buttonStyle = {
  fontSize: '24px',
  padding: '10px 20px',
  margin: '5px',
  background: '#007bff',
  color: 'white',
  border: 'none',
  borderRadius: '5px',
  cursor: 'pointer'
};

export default CounterApp;

11. Common Mistakes + Solutions

Mistake 1: JSX mein class use karna

Code
// ❌ Wrong
<div class="container">Hello</div>

// ✅ Correct
<div className="container">Hello</div>

Mistake 2: State directly modify karna

Code
// ❌ Wrong – React won't re-render
const [count, setCount] = useState(0);
count = 5; // No re-render

// ✅ Correct – use setter function
setCount(5);

Mistake 3: Components ko render karna bhoolna

Code
// ❌ Wrong – not using component
function App() {
  return (
    <div>
      Header  // Just text, not component
    </div>
  );
}

// ✅ Correct
import Header from './Header';

function App() {
  return (
    <div>
      <Header />
    </div>
  );
}

Mistake 4: Key prop missing in lists

Code
// ❌ Warning: Each child should have unique key
{items.map(item => <li>{item}</li>)}

// ✅ Correct
{items.map(item => <li key={item.id}>{item.name}</li>)}

12. Quick Cheat Sheet

ConceptSyntaxExample
Componentfunction Name() { return JSX }function Welcome() { return <h1>Hi</h1> }
JSX Expression{ javascript }<h1>Hello, {name}</h1>
Props<Comp propName={value} /><User name="Rahul" />
useStateconst [val, setVal] = useState(init)const [count, setCount] = useState(0)
Event HandleronClick={handler}<button onClick={handleClick}>Click</button>
Conditional{condition ? true : false}{isLoggedIn ? <Logout /> : <Login />}
List.map() with key{items.map(item => <li key={item.id}>{item}</li>)}

13. FAQ (10 Questions)

Q1: React.js Kya Hai – Library ya Framework?
React ek library hai (UI ke liye)। Framework (like Next.js) React ke upar bana hai.

Q2: Kya React seekhne ke liye JavaScript aana zaroori hai?
Haan! ES6 features (arrow functions, destructuring, spread operator, map/filter) aana chahiye।

Q3: JSX likhna zaroori hai React mein?
Nahi, but recommended है। Bina JSX ke React.createElement() use karna padta hai – jo messy होता है।

Q4: Functional vs Class components – 2026 mein kya use karein?
Functional components + Hooks – ye standard है अब।

Q5: Props ko child se parent kaise bhejein?
Directly nahi। Parent ek function prop bhejta hai, child us function ko call karta hai data ke saath।

Q6: State change hone par kya hota hai?
Component re-render होता है – React automatically updated UI show karta है।

Q7: React slow kyun lagta hai pehli baar?
Pehli baar bundle download hota है। Next load instant होता है (caching + SPA)।

Q8: Kya React SEO-friendly hai?
Default React CSR (Client Side Rendering) SEO ke liye achha nahi है। Isliye Next.js use karte hain (SSR/SSG)।

Q9: React Native kya hai?
React Native se mobile apps (Android + iOS) banate hain – same React concepts।

Q10: React 2026 mein kaunsa version use karein?
React 19 stable hai। create-vite se latest version automatically install हो जाता है।


14. Conclusion

बहुत बढ़िया दोस्तों! आज हमने React.js JSX Components Hindi को पूरी detail में समझा।

Quick Recap:

  • React.js Kya Hai? – UI banane ki library by Facebook
  • JSX – JavaScript mein HTML jaisa syntax
  • Components – Reusable building blocks (Functional preferred)
  • Props – Parent → Child data flow (read-only)
  • State – Component ka internal memory (mutable)
  • Virtual DOM – React ko fast banata है

Mera personal experience:

जब मैंने पहली बार React सीखा, तो मुझे JSX अजीब लगा – “HTML andar JavaScript?”। लेकिन 1 week में muscle memory बन गई। अब मैं बिना React के website नहीं बना सकता!

अब तुम्हारी बारी है!

नीचे comment में बताओ:

  1. React.js सीखकर तुम क्या बनाना चाहते हो? (Website? App? Game?)
  2. तुम्हें JSX कैसा लगा – weird या cool?
  3. अगला topic क्या चाहिए? (useState deep dive? useEffect? Props drilling?)

The Easy Master पर बने रहो। Happy React-ing! ⚛️🚀


Resources

Additional Resources

TheEasyMaster

Author at The Easy Master.

Related posts

Leave a Reply

Your email address will not be published. Required fields are marked *