AI
prepair.app
Пройти інтерв'ю →
EnglishРусскийУкраїнська
🅰️

Junior Angular Frontendпитання на співбесіді Angular

Junior · без досвіду / до 1 року

Співбесіда Angular охоплює впровадження залежностей, RxJS, change detection і TypeScript — фреймворк суворий, тому питання перевіряють, чи розумієте ви його механіку. Нижче — найчастіші з еталонними відповідями. Junior: базова теорія, визначення та прості практичні кейси.

Теми для підготовки

Dependency Injection
RxJS та Observables
Change Detection
Модулі й компоненти
Реактивні форми
TypeScript

6 питань рівня Junior з відповідями

1

Як працює Dependency Injection в Angular? Що таке провайдери?

Відповідь

В Angular ієрархічне дерево інжекторів: запит залежності піднімається від інжектора компонента до кореневого. Провайдер пояснює інжектору, як створити токен — через useClass, useValue, useFactory або useExisting. Реєстрація сервісу в root дає синглтон на весь застосунок; реєстрація на компоненті створює новий екземпляр на кожен екземпляр компонента, і саме так стан обмежують рамками фічі.

2

У чому різниця між Observable і Promise?

Відповідь

Promise — це одне майбутнє значення, яке починає виконуватись негайно і не може бути скасоване. Observable — потік із нуля або більше значень, лінивий до підписки, скасовуваний через відписку і перетворюваний операторами на кшталт debounce, retry чи switchMap. Для HTTP-запитів практична вигода у скасуванні: підказка в пошуку може відкинути попередній запит, доки користувач продовжує друкувати.

3

Поясніть change detection. Чим OnPush відрізняється від Default?

Відповідь

Change detection обходить дерево компонентів після подій, таймерів або HTTP-відповідей і перемальовує змінені привʼязки. Default перевіряє кожен компонент на кожному циклі. OnPush перевіряє компонент лише коли змінилося посилання у вхідній властивості, всередині сталася подія або async pipe видав значення — тому OnPush вимагає імутабельних даних: зміна обʼєкта на місці не змінює посилання, і подання не оновиться.

4

Що таке map, switchMap і mergeMap? У чому різниця?

Відповідь

map перетворює кожне значення, що надійшло. switchMap і mergeMap розгортають вкладений observable: switchMap скасовує попередню внутрішню підписку при надходженні нового значення, mergeMap виконує всі паралельно. switchMap беруть для пошуку або навігації, де важливий лише останній результат, mergeMap — коли кожен запит зобовʼязаний завершитися, а concatMap — коли важливий порядок.

5

Що таке ngOnInit і чим він відрізняється від конструктора?

Відповідь

Конструктор виконується при створенні екземпляра класу, до того як Angular заповнив вхідні привʼязки, тому там вхідні властивості ще undefined. ngOnInit виконується після першого проходу привʼязок, і саме туди належить ініціалізація, що залежить від входів. За домовленістю конструктор лише приймає впроваджені залежності, а реальну підготовку робить ngOnInit.

6

У чому різниця між template-driven і reactive формами?

Відповідь

Template-driven форми будують модель неявно з директив у шаблоні й підходять для простих випадків. Reactive форми описують FormGroup у класі компонента, завдяки чому валідація, динамічні контроли й тестування стають явними та типобезпечними. Reactive рекомендують за замовчуванням для всього складнішого за форму логіну, бо стан форми живе в коді, де про нього можна міркувати.

🦎

Прочитати відповіді недостатньо

На співбесіді ти говориш вголос під тиском. Кем поставить ті самі питання, оцінить кожну відповідь і покаже, що саме підтягнути.

Пройти інтерв'ю Junior Angular Frontend →
Безкоштовно · 3 інтерв'ю на місяць

Інші рівні — Angular Frontend

Middle Angular FrontendSenior Angular FrontendУсі питання Angular Frontend

Інші спеціалізації

🔍Junior QA Manual🤖Junior QA AutomationJunior Java Backend🐍Junior Python Backend🐘Junior PHP Backend🦫Junior Go Backend🟢Junior Node.js Backend⚛️Junior React Frontend💚Junior Vue FrontendJunior Next.js