I go с практикой в JS.
На этот раз я пытаюсь сделать то же самое, используя asyn c / await или обещание:
const url = 'https://jsonplaceholder.typicode.com/todos/1';
- Asyn c / версия ожидания:
async function getData() {
const response = await fetch(url);
const data = await response.json();
return data;
}
const callGetData = async () => {
try {
const data = await getData()
console.log(data);
} catch (error) {
console.log("Something gone wrong")
}
}
Версия обещания
function getData() {
return new Promise((resolve, reject) => {
fetch(url)
.then(res => res.json())
.then(data => resolve(data))
.catch(error => reject(error));
});
}
const callGetData = () => {
getData()
.then(data => console.log(data))
.catch(error => console.log("Something gone wrong"));
}
и, наконец:
callGetData();
Оба фрагмента работают. Мне проще написать версию asyn c / await.
Вопросы:
- правильно ли я использую обещание в этом случае?
- есть ли какие-то возможные улучшения?
Спасибо за вашу помощь.