Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Асинхронная функции (https://javascript.ru/forum/misc/85006-asinkhronnaya-funkcii.html)

Tri 02.03.2023 16:41

Асинхронная функции
 
Здраствуйте

Есть задание

Асинхронная функция получает url-адрес api и возвращает загруженные данные

Код вроде начал, но чем его закончить не понимаю

fetch('https://jsonplaceholder.typicode.com/posts')
  .then((response) => response.json())
  .then((json) => console.log(json));


Сам код

async function loadData(apiUrl) {
 
}

export default loadData;


import loadData from "./index";

it("Список постов", async () => {
  expect(
    await loadData("https://jsonplaceholder.typicode.com/posts")
  ).toHaveLength(100);
});

it("Список пользователей", async () => {
  expect(
    await loadData("https://jsonplaceholder.typicode.com/users")
  ).toHaveLength(10);
});

it("Карточка пользователя", async () => {
  expect(
    await loadData("https://jsonplaceholder.typicode.com/users/1")
  ).toHaveProperty("id", 1);
});

voraa 02.03.2023 20:27

Как то так

async function loadData(apiUrl) {
	const response = await fetch(apiUrl);
	const json =  await response.json();
	return json ; 
}
export default loadData;


import loadData from "./index";
 
it("Список постов", async () => {
  const res = await loadData("https://jsonplaceholder.typicode.com/posts")
  expect(res).toHaveLength(100);
});
 
it("Список пользователей", async () => {
  const res = await loadData("https://jsonplaceholder.typicode.com/users")
  expect(res).toHaveLength(10);
});
 
it("Карточка пользователя", async () => {
    const res = await loadData("https://jsonplaceholder.typicode.com/users/1")
	expect(res).toHaveProperty("id", 1);
});


Можно и так прямо писать
it("Карточка пользователя", async () => {
	expect(await loadData("https://jsonplaceholder.typicode.com/users/1"))
            .toHaveProperty("id", 1);
});


Часовой пояс GMT +3, время: 10:29.