नमस्ते दोस्तों! 🙏
स्वागत है 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 सीखने का सफर! 🚀
Table of Contents
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 JS | Solution in React |
|---|---|
DOM manipulate karne ke liye document.getElementById jaisi lengthy syntax | Declarative – tum sirf batao “kya dikhana hai”, React khud update karega |
| Page reload hota hai har click par | SPA (Single Page Application) – No full page reload |
| Code maintain karna mushkil (spaghetti code) | Component-based – organized, clean code |
| State management difficult | State built-in hai – easy data management |
| Reusability nahi hai | Reusable components – ek baar likho, 100 jagah use करो |
React.js vs Vanilla JS – Example:
// 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)

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
- React memory mein ek copy rakhta hai (Virtual DOM)
- Jab bhi change hota hai – pehle Virtual DOM update hota hai
- React compare karta hai (Virtual DOM vs Real DOM)
- 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):
// 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):
// React with JSX – beautiful!
const element = (
<div className="container">
<h1>Hello World</h1>
<p>This is React</p>
</div>
);JSX Rules (Yaad Rakho):
// ✅ 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:
| Type | Syntax | When to Use |
|---|---|---|
| Functional Component | Function that returns JSX | Modern React – recommended |
| Class Component | Class extends React.Component | Old code – less common now |
Functional Component (Modern Way – 2026):
// 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):
import React from 'react';
class Welcome extends React.Component {
render() {
return <h1>Welcome to React!</h1>;
}
}
export default Welcome;Component Use Karna:
// 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
| Feature | Functional Component | Class Component |
|---|---|---|
| Syntax | Simple function | Class with render() |
| Code length | Shorter | Longer |
this keyword | ❌ Nahi | ✅ Haan (confusing) |
| Hooks | ✅ Supported | ❌ Can’t use hooks |
| Performance | Slightly better | Slightly slower |
| Recommended | ✅ YES (2026) | ❌ No (unless old code) |
Example – Same component dono tarah:
// ✅ 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

Props = Properties – data jo parent component child component ko bhejta है।
Props Kaise Kaam Karte Hain:
// 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:
// ✅ 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 -> UserAvatar8. State – Component ka Apna Memory
State = component ka internal memory jo change ho sakti है।
Props vs State:
| Feature | Props | State |
|---|---|---|
| Mutable? | ❌ No (read-only) | ✅ Yes |
| Who controls? | Parent component | Component itself |
| Purpose | Pass data down | Manage dynamic data |
| Changes trigger re-render? | Yes (if parent changes) | Yes |
useState Hook – State Manage Karne Ka Tarika:
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:
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)
# 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 devStep 3: Folder Structure Samjho
my-first-app/
├── src/
│ ├── App.jsx # Main component
│ ├── main.jsx # Entry point
│ └── index.css # Global styles
├── index.html
└── package.jsonStep 4: Pehla Component Modify Karo
// 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
// 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
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
// ❌ Wrong
<div class="container">Hello</div>
// ✅ Correct
<div className="container">Hello</div>Mistake 2: State directly modify karna
// ❌ 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
// ❌ 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
// ❌ 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
| Concept | Syntax | Example |
|---|---|---|
| Component | function Name() { return JSX } | function Welcome() { return <h1>Hi</h1> } |
| JSX Expression | { javascript } | <h1>Hello, {name}</h1> |
| Props | <Comp propName={value} /> | <User name="Rahul" /> |
| useState | const [val, setVal] = useState(init) | const [count, setCount] = useState(0) |
| Event Handler | onClick={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 में बताओ:
- React.js सीखकर तुम क्या बनाना चाहते हो? (Website? App? Game?)
- तुम्हें JSX कैसा लगा – weird या cool?
- अगला topic क्या चाहिए? (useState deep dive? useEffect? Props drilling?)
The Easy Master पर बने रहो। Happy React-ing! ⚛️🚀
Resources
- React Official Website
- React.dev – Quick Start Guide
- Vite – Build Tool for React
- MDN – ES6 JavaScript Guide