# JavaScript#4 **[Проміси, async/await](https://uk.javascript.info/async)** [Генератори, розширена ітерація](https://uk.javascript.info/generators-iterators) **[Модулі](https://uk.javascript.info/modules)** [Бульбашковий механізм (спливання та занурення)](https://uk.javascript.info/bubbling-and-capturing) [DOMContentLoaded, load, beforeunload, unload](https://uk.javascript.info/onload-ondomcontentloaded) **[Mutation Observer](https://uk.javascript.info/mutation-observer)** **[Event loop](https://uk.javascript.info/event-loop)** **[LocalStorage, SessionStorage](https://uk.javascript.info/localstorage)** **[Fetch](https://uk.javascript.info/fetch)** **[Fetch API](https://uk.javascript.info/fetch-api)** **[Fetch Crossorigin](https://uk.javascript.info/fetch-crossorigin)** ## TypeScript **[The Basics](https://www.typescriptlang.org/docs/handbook/2/basic-types.html)** **[Everyday Types](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html)** ## Exercise Перейти за посиланням: https://petstore3.swagger.io/ Створити js файл або відкрити будь який sandbox. 1. Виконати запити GET: /pet/findByStatus , GET: /pet/{petId} за допомогою fetch. Результат вивести в консоль (або записати в сторедж) 2. Створити нову тваринку  POST: /pet . Перевірити чи створилась GET: /pet/{petId} 3. Заапдейтити нову траринку PUT: /pet. Перевірити чи заапдейтилась GET: /pet/{petId} 4. Заапдейтити через GET: /pet/{petId} 5. Зааплоадити картинку GET: /pet/{petId}/uploadImage 6. Видалити тваринку DELETE: /pet/{petId} 7. Для всіх запитів має бути error handling - помилки мають опрацьовуватись ** Base URL: https://petstore3.swagger.io/api/v3/