Alraffe
이것 저것 개발.
Alraffe
전체 방문자
오늘
어제
  • 분류 전체보기
    • TIL
    • Front-end
      • CSS
      • React
      • Next.js
    • Back-end
    • Book
      • Effective Typescript

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • vite 깃헙 배포
  • 주니어 개발자 이력서
  • 개발자 커피챗
  • 배포 에러
  • 이펙티브타입스크립트
  • JavaScript
  • 타입스크립트 책
  • 자바스크립트
  • 깃헙 배포 빈 화면
  • JS
  • Til
  • evnentBubbling
  • 노션 이력서
  • JASON.stringify
  • object 값을 찍고 싶을 떄
  • 리액트
  • 타입스크립트
  • vite 배포 에러
  • react
  • 프론트엔드회고
  • TypeScript
  • 프론트엔드 책 추천
  • 프론트엔드
  • git
  • next14
  • JASON.parse()
  • 타입스크립트 책 추천
  • frontend
  • 오랠리
  • 타입스크립트 추천

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Alraffe
TIL

자바스크립트의 비동기 처리

TIL

자바스크립트의 비동기 처리

2024. 1. 12. 00:08

 

 

 프론트엔드를 공부하면서 많이 들어봤지만 아직도 개념이 정확하게 잡혀 있지 않다는 게 창피한 비동기 처리. 이번에 면접을 보면서 이 질문에 대답을 명확히 하지 못 했다는 수치심을 느끼고 이 참에 제대로 정리하고 넘어가고자 한다.

 

동기  VS 비동기

 자바스크립트가 싱글 스레드다. 싱글 스레드란 무엇일까? 한 마디로 자바스크립트 언어는 한 번에 하나만 수행할 수 있다는 말이다. 그렇기 때문에 동기와 비동기의 개념이 나온 것 같다. 

 동기란 하나의 작업이 수행되고 끝난 다음에 또 다른 작업이 수행되는 것처럼 작업이 순서대로 하나씩 수행되는 방식을 말한다. 반대로 비동기란 하나의 업무를 처리하는 동시에 다른 업무도 처리하는 것을 말한다. 그런데 한 번에 하나의 작업만 수행한다던 자바스크립트로 어떻게 비동기 처리를 할 수 있을까?

 그 이유는 브라우저가 멀티 스레드이기 때문이다. 브라우저에서 제공하는 API들을 Web API라고 부르는데, 이 Web API들은 각 API 마다 스레드들이 할당돼있다. 따라서 자바스크립트에서 실행되는 비동기 처리는 자바스크립트가 브라우저에게 처리해달라고 요청해 동시에 작업을 수행할 수 있게 만든 것이다.

 

이런 싱글 스레드 모델을 극복하기 위해, 즉, 비동기 처리를 위해 콜백 함수, 프로미스 객체, async/await이 사용된다.

 

 

참고자료
https://inpa.tistory.com/entry/%F0%9F%8C%90-js-async
https://yozm.wishket.com/magazine/detail/1982/

 

 

저작자표시 비영리 변경금지 (새창열림)

'TIL' 카테고리의 다른 글

Next.js v14 Error : createContext in a Server Component  (0) 2024.02.14
[TIL] 이벤트 버블링?  (0) 2024.01.23
Git rebase  (0) 2023.10.07
Git tag  (0) 2023.10.02
  • 동기  VS 비동기
'TIL' 카테고리의 다른 글
  • Next.js v14 Error : createContext in a Server Component
  • [TIL] 이벤트 버블링?
  • Git rebase
  • Git tag
Alraffe
Alraffe

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.