Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Надбудова над JavaScript». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)**TypeScript** розширює мову JavaScript, додаючи статичну типізацію, новий синтаксис (enum, type, interface) і підтримку майбутніх можливостей JS, не змінюючи сенс і поведінку самого JavaScript-коду. **Ключове:** будь-який валідний JavaScript-код є водночас валідним TypeScript-кодом.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)Зображення### 1. Що означає "надбудова" TypeScript **розширює** мову JavaScript: - додає **статичну типізацію** (анотації типів, інтерфейси, generics); - вводить **новий синтаксис** (наприклад, `enum`, `type`, `interface`); - підтримує **майбутні можливості JS**, які ще не реалізовані в усіх середовищах. При цьому TypeScript **не змінює сенс і поведінку** JavaScript-коду - він лише додає рівень перевірки типів *до виконання програми*. --- ### 2. Приклад: будь-який JS - валідний TS ```javascript // Звичайний JavaScript function sum(a, b) { return a + b; } ``` Цей код **абсолютно коректний** і в TypeScript. Але в TS можна додати типи: ```javascript function sum(a: number, b: number): number { return a + b; } ``` Тепер компілятор перевірить, що `a` і `b` - числа, а значення, що повертається, теж `number`. --- ### 3. Як це працює "під капотом" TypeScript-файли (`.ts`): 1. **Проходять перевірку типів** (нічого не виконується - лише аналіз); 2. Потім **транспілюються** (перекладаються) у звичайний JavaScript-код; 3. Отриманий `.js` можна запустити в браузері або Node.js - без потреби в TS під час виконання. --- ### 4. Чому це важливо Завдяки такій архітектурі TypeScript: - повністю **сумісний з наявною екосистемою JavaScript** (npm, Node.js, React тощо); - **не вимагає змінювати рантайм**, рушій чи браузер; - додає **рівень безпеки та передбачуваності**, залишаючись "прозорим" для виконання. --- ### Підсумок > TypeScript - **надбудова** над JavaScript, > тому що він **включає весь JavaScript + додає типізацію та нові можливості**, > залишаючись при цьому **сумісним і компільованим** у чистий JavaScript.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.