← Усі теми

Питання на співбесіді з TypeScript (Junior) з відповідями

75 запитань для співбесіди з теми TypeScript (Junior) - з правильними відповідями, поясненнями й посиланнями на документацію.

Пройти цей тест
  1. 1.Що таке TypeScript?
  2. 2.Чи є перевірка типів TypeScript під час виконання програми?
  3. 3.Чим unknown відрізняється від any?
  4. 4.Що означає тип never?
  5. 5.Що виведе TypeScript для let x = 5;?
  6. 6.Яка різниця між interface і type для опису об'єкта?
  7. 7.Як оголосити необов'язкову властивість об'єкта?
  8. 8.Що робить модифікатор readonly у { readonly id: number }?
  9. 9.Що означає тип string | number?
  10. 10.Що дає перетин type Admin = User & { role: 'admin' }?
  11. 11.Що таке літеральний тип 'left' | 'right'?
  12. 12.Як типізувати функцію, що приймає рядок і повертає число?
  13. 13.Як оголосити необов'язковий параметр функції?
  14. 14.Що таке кортеж (tuple) у TypeScript?
  15. 15.Як типізувати масив рядків?
  16. 16.Що таке дженерик (generic)?
  17. 17.Що робить утилітарний тип Partial<User>?
  18. 18.Чим відрізняються Pick<User, 'id' | 'name'> і Omit<User, 'password'>?
  19. 19.Що описує Record<string, number>?
  20. 20.Що поверне keyof { id: number; name: string }?
  21. 21.Що робить typeof у позиції типу: type Config = typeof config?
  22. 22.Як правильно типізувати props React-компонента?
  23. 23.Який тип має подія в onChange для <input> у React?
  24. 24.Як указати тип стану, якщо початкове значення null: useState(null)?
  25. 25.Що робить твердження типу value as string?
  26. 26.Що робить оператор ! у user!.name?
  27. 27.Що вмикає прапорець strict у tsconfig.json?
  28. 28.Що дає strictNullChecks?
  29. 29.Як звузити тип string | number до string усередині умови?
  30. 30.Чим enum Color { Red, Green } відрізняється від type Color = 'red' | 'green'?
  31. 31.Що робить as const у const roles = ['admin', 'user'] as const?
  32. 32.Що таке структурна типізація в TypeScript?
  33. 33.Що таке файл .d.ts?
  34. 34.Навіщо встановлювати пакети на кшталт @types/lodash?
  35. 35.Що скомпілює tsc з TypeScript-файлу?
  36. 36.Який тип має змінна e у catch (e) за ввімкненого strict?
  37. 37.Що означає тип значення, що повертається, void?
  38. 38.Як описати об'єкт із довільними рядковими ключами й числовими значеннями через індексну сигнатуру?
  39. 39.Як розширити інтерфейс?
  40. 40.Що робить implements у класі?
  41. 41.Чим private у TypeScript відрізняється від #field у JavaScript?
  42. 42.Як типізувати асинхронну функцію, що повертає користувача?
  43. 43.Як TypeScript учинить із const el = document.getElementById('app')?
  44. 44.Що таке union зі спільним полем-дискримінатором?
  45. 45.Як вивести тип значення, що повертає функція createStore?
  46. 46.Що станеться під час передавання об'єктного літерала із зайвою властивістю?
  47. 47.Що таке tsconfig.json?
  48. 48.Як поступово перевести JS-проєкт на TypeScript?
  49. 49.Чим Required<T> відрізняється від Partial<T>?
  50. 50.Як указати, що функція приймає будь-яку кількість чисел?
  51. 51.Про що повідомляє опція noImplicitAny?
  52. 52.Чим (string | number)[] відрізняється від string[] | number[]?
  53. 53.Який тип отримає const direction = 'left';?
  54. 54.Який тип у users.find((u) => u.id === id), якщо users: User[]?
  55. 55.Чому typeof value === 'object' може бути пасткою під час звуження?
  56. 56.Що пропускає if (count), коли count: number | undefined?
  57. 57.Чим instanceof допомагає з типами?
  58. 58.Чому не можна перевірити if (data is User) у рантаймі?
  59. 59.Що робить Readonly<User>?
  60. 60.Що вимагає Record<'draft' | 'published', number>?
  61. 61.Який тип отримує const items = []; з увімкненим strict?
  62. 62.Як викликати узагальнену функцію з явним аргументом типу?
  63. 63.Як описати перевикористовуваний тип функції-обробника події?
  64. 64.Чому в [1, 2].forEach((n) => console.log(n)) можна передати колбек з одним параметром, хоча forEach передає три?
  65. 65.Який тип у результату user?.address?.city, якщо city: string?
  66. 66.Який тип у const port = env.PORT ?? 3000, якщо env.PORT: string | undefined?
  67. 67.Який тип у await (await fetch(url)).json()?
  68. 68.Який тип має використовувати React-компонент для children, що можуть бути текстом, елементами чи нічим?
  69. 69.Чи різні типи Array<string> і string[]?
  70. 70.Як перевіряти типи в CI, якщо бандлер (Vite, esbuild) уже компілює TS без перевірки типів?
  71. 71.Чим необов'язкова властивість name?: string відрізняється від name: string | undefined?
  72. 72.Як описати в типі об'єкт із методом?
  73. 73.Чи можуть свіжі версії Node.js запускати .ts-файл напряму?
  74. 74.Який тип отримує параметр функції зі значенням за замовчуванням?
  75. 75.Чому @ts-expect-error безпечніший за @ts-ignore?