Beginner'dan Senior darajagacha guruhlangan React interview savollari — har biri chuqur tushuntirish, keng tarqalgan noto'g'ri javob va test bilan.
Bu bobda daraja bo'yicha guruhlangan React interview savollari — har biri chuqur tushuntirish va keng tarqalgan noto'g'ri javob bilan.
Savol: Props va State orasidagi farq nima?
🧠 Think First! Javobni o'qishdan oldin o'zingiz javob berishga harakat qiling.
<details> <summary>Answer</summary> Props — parentdan childga uzatiladigan, read-only ma'lumot. State — komponentning o'z ichki, o'zgarishi mumkin bo'lgan xotirasi.Deep Explanation: Props komponent tashqarisidan boshqariladi va komponent uni o'zgartira olmaydi. State esa komponentning o'zi tomonidan boshqariladi va useState/setState orqali yangilanadi.
Common Wrong Answer: "Props va State bir xil narsa, ikkalasi ham ma'lumot saqlaydi" — bu ularning kelib chiqishi va o'zgaruvchanlik xususiyatidagi asosiy farqni e'tiborsiz qoldiradi.
</details>Savol: useEffect'ning dependency array'i qanday ishlaydi va uni noto'g'ri belgilash qanday muammolarga olib keladi?
<details> <summary>Answer</summary> Dependency array — effect qachon qayta ishga tushishini belgilaydi. Bo'sh massiv — faqat mount'da; massiv berilmasa — har render'da; qiymatlar bilan — o'sha qiymatlar o'zgarganda.Deep Explanation: Noto'g'ri belgilangan dependency — infinite loop (agar effect ichida dependency'ni o'zgartirsa) yoki stale closure (agar kerakli dependency qo'shilmasa) muammolariga olib kelishi mumkin.
Common Wrong Answer: "useEffect faqat data fetching uchun ishlatiladi" — bu PART 12'da ko'rilgan noto'g'ri, keng tarqalgan tushuncha.
</details>Savol: React reconciliation jarayonida key prop qanday rol o'ynaydi va uni noto'g'ri ishlatish qanday oqibatlarga olib kelishi mumkin?
Deep Explanation: Bu ayniqsa ichki state'ga (masalan input) ega komponentlar ro'yxatida muhim — noto'g'ri key (masalan index) tartib o'zgarganda state'ning "noto'g'ri" elementga bog'lanib qolishiga olib kelishi mumkin.
Common Wrong Answer: "key faqat React'ning ichki ogohlantirishini yo'qotish uchun kerak" — bu key'ning haqiqiy, funksional ahamiyatini kamsitadi.
</details>Savol: Katta React ilovasida performance muammosi paydo bo'lganda, uni qanday tizimli tarzda diagnostika qilasiz?
<details> <summary>Answer</summary> Birinchi navbatda React DevTools Profiler orqali qaysi komponent ko'p vaqt olayotganini va nechta marta re-render bo'layotganini o'lchash kerak. So'ng — sabab (keraksiz re-render, qimmat hisoblash, katta ro'yxat) aniqlanadi va mos yechim (React.memo, useMemo, useCallback, virtualization, code splitting) tanlanadi.Deep Explanation: Muhim tamoyil — "measure first, optimize when necessary". Ko'r-ko'rona optimallashtirish (hamma joyga memo qo'yish) ko'pincha kodni murakkablashtiradi, lekin real foyda bermaydi.
Common Wrong Answer: "Har doim barcha komponentlarga React.memo qo'shish kerak" — bu PART 25'da ko'rilgan, keng tarqalgan noto'g'ri yondashuv.
</details>Task: O'zingiz uchun 5 ta qo'shimcha React interview savolini yozing (har biriga Question, Answer, Deep Explanation, Common Wrong Answer bilan).
Savol: Quyidagi kodda nechta xato bor?
App.jsxReact JSXfunction Counter(props) {props.count++;const [items, setItems] = useState([]);useEffect(() => {setItems([...items, props.count]);});return <p>{items.length}</p>;}
Your Task: Barcha xatolarni toping.
<details> <summary>Solution</summary> Kamida 3 ta xato bor: 1. `props.count++` — props mutation (PART 5) 2. `useEffect` dependency array yo'q — har render'da ishga tushadi 3. `setItems([...items, ...])` effect ichida, dependency'siz — bu `items`ning o'zgarishi effect'ni yana ishga tushirib, infinite loop yaratadi (PART 12) </details>Interview savollari — nafaqat sintaksisni, balki "nega" va "qanday ichki ishlaydi" degan chuqur tushunishni sinaydi. Har bir javobda keng tarqalgan noto'g'ri tushunchalarni bilish — muhim ustunlik beradi.
code.textTEXT🟢 Beginner: Props vs State, JSX, Components🟡 Intermediate: useEffect, Lists&Keys, Forms🔴 Advanced: Reconciliation, Context performance🟣 Senior: Architecture, Performance diagnostics
Mavzu bo‘yicha tushunchalaringizni interaktiv test orqali sinovdan o‘tkazing va natijalarni bilib oling.
Darslikda o‘rganilgan qoidalarga asosan real kod yozing, testlardan o‘tkazing va yechimlarni mustahkamlang.
Test Sinovi
Hali topshirilmagan (kamida 75% kerak)
Dars sifati va mazmunini yaxshilash uchun o‘z haqqoniy bahoingizni qoldiring.
Mavzuni to‘liq o‘zlashtirish uchun test sinovi, amaliy kodlash va bog‘liq darslar
O‘z bilimingizni interaktiv test savollari orqali tekshiring va darhol xatolarni tahlil qiling.
Nazariyani real kod yozish bilan mustahkamlang, avtomatik testlardan o‘ting va XP to‘plang.
Kurs bo‘yicha keyingi va bog‘liq mavzular: