← 목록

비동기 JavaScript를 활용한 데이터 가져오기 🌐

작성: 2024년 05월 26일읽기: 약 3분

웹 개발을 배우는 여러분, 오늘은 웹 페이지가 서버로부터 데이터를 가져오는 멋진 방법에 대해 알아볼 거예요. 바로 비동기 JavaScript를 사용하는 것인데요, 이 방법을 통해 사용자 경험을 크게 향상시킬 수 있습니다. 여러분이 웹사이트를 방문했을 때 페이지가 빠르게 로드되는 것을 좋아하시나요? 바로 그것이 비동기 JavaScript의 힘입니다!

비동기 JavaScript란?

간단히 말해서, 비동기 JavaScript는 웹 페이지가 서버로부터 데이터를 '기다리는' 동안에도 사용자가 페이지를 계속 사용할 수 있게 해주는 기술입니다. 이는 웹 페이지가 데이터를 받아올 때까지 전체 페이지를 멈추지 않게 해줍니다.

예제: Fetch API 사용하기

JavaScript에는 fetch라는 멋진 함수가 있어요. 이 함수를 사용하면 비동기적으로 데이터를 가져올 수 있습니다. 아래는 간단한 예제입니다.

fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Fetching data failed:', error));

이 코드는 무엇을 하나요? 우리가 fetch 함수에 URL을 넘겨주면, 그 함수는 해당 URL로부터 데이터를 비동기적으로 가져옵니다. 데이터가 성공적으로 도착하면, 첫 번째 .then()에서 응답을 JSON 형태로 변환합니다. 그리고 두 번째 .then()에서 우리는 그 데이터를 사용할 수 있습니다. 만약 무언가 잘못되면, .catch()가 실행되어 오류를 콘솔에 출력합니다.

Async/Await 사용하기

asyncawait는 비동기 코드를 더욱 쉽게 작성할 수 있게 해주는 JavaScript의 기능입니다. 위의 fetch 예제를 asyncawait를 사용하여 다시 작성해보겠습니다.

async function fetchData() {
  try {
    const response = await fetch('https://api.example.com/data');
    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Fetching data failed:', error);
  }
}

fetchData();

여기서 async 함수는 비동기 함수를 정의합니다. 이 함수 내에서 await 키워드를 사용하면 JavaScript가 해당 프로미스가 완료될 때까지 기다리게 됩니다. 이 방식은 코드를 더 읽기 쉽고 이해하기 쉽게 만들어줍니다.

마무리

비동기 JavaScript는 웹 개발에서 매우 중요한 부분입니다. 이를 통해 사용자 경험을 크게 향상시킬 수 있으며, 웹 애플리케이션을 더욱 동적이고 반응적으로 만들 수 있습니다. 오늘 배운 fetch API와 async/await를 활용하여 멋진 웹 애플리케이션을 만들어보세요!