분홍분홍 코딩 프로젝트

[Javascript] 비동기 처리, 왜 필요한가. 본문

Javascript

[Javascript] 비동기 처리, 왜 필요한가.

봄나물소녀 2022. 2. 17. 10:07

이 질문을 이해하기 위해선 자바스크립트에서 비동기 처리에 사용되는 객체인 promise에 대해 먼저 정리를 하고 넘어갈 필요가 있다.

항상 공부를 시작 할 땐 '왜'를 생각해보는건 좋은 공부 방법인 것 같다.

 

여기선 비동기 처리에 기본이 되는 api들이 어떤 이유에서 쓰이는건지 대해서만 다룬다.


순서

  • Http api 와 REST api
  • XMLhttpRequest
  • Promise
  • Axios

Http api 와 REST api

비슷한 의미로 쓰인다.

http api는 http를 이용해서 정해둔 스펙으로 데이터를 주고 받는 것.

REST api 는 조금 업그레이드되서 제약조건이 추가된 것 이다.

그래서 더 넓은 의미로 쓰인다.

REST를 인터넷에 쳐보면 각자 정의한 바가 다르다.

그 중에 가장 와닿았던건 "자원의 상태를 가지고 "

 

 

promise가 왜 필요한가?

promise는 주로 서버에서 받아온 데이터를 표시 할 때 쓰인다.

여기서 서버에서 데이터를 받아오기도 전에 화면에 표시하려고 하면 에러가 뜨거나 빈 화면이 뜬다.

당연한 것이다. 아직 데이터가 다 받아지지 않았기 때문이다.

이런 문제점을 해결하기 위한 방법 중 하나가 promise 이다.