JavaScript/javascript
Javascript 를 이해하자
BBB.OOO
2021. 11. 9. 16:03
반응형
Javascript
Javascript는 웹페이지를 조작하는 프로그래밍 언어이다.
Javascript 런타임
: 런타임이란 프로그래밍 언어가 구동되는 환경을 말한다.
: Javascript 런타임은 자바스크립트가 구동되는 환경을 말한다.
예) 크롬, 파이어폭스 등 여러 브라우저들과 Nodejs 를 자바스크립트 런타임이라고 한다.
Javascript 동기(Synchronous)
동기 방식은 서버에 요청을 보냈을 때 응답이 돌아와야 다음 동작을 수행한다.
Javascript 비동기(Asynchronous)
비동기 방식은 요청을 보냈을 때 응답과 상관없이 다음 동작을 수행한다.
보통의 웹에선 서버에 요청을 할때 비동기 방식으로 요청을 한다. 동기 방식으로 요청을 했을경우 응답이 올때까지
브라우저는 반응이 없고 멈춰있다.
Javascript 는 싱글 스레드(thread)
운영체제에서 실행중인 하나의 프로그램을 프로세스라고 한다.
이러한 프로세스에서 하나의 작업을 처리하는 게 스레드다.
Javascript 에서 싱글 스레드라는 말은 한번에 하나의 작업만 수행할 수 있으며 하나의 작업을 수행완료 했으면
다음작업을 수행하는 형식이다.
이러한 싱글 스레드에서는 동기방식으로 작업을 처리한다. 위 내용처럼 하나의 작업이 완료되어야 다음 작업을 수행한다. 이러한 동기 방식의 싱글 스레드는 블로킹을 만든다.
* 블로킹 : 간단하게 말하자면 하나의 작업을 수행중에 다른 이벤트를 줬을때 반응이 없고 멈춰있는 상태
위 블로킹을 해결하기 위해 비동기 방식(콜백 방식)을 사용한다.
예) AJAX 요청
서버에 요청을 했을때 응답을 받기전 다음 코드를 수행하고 비동기 요청이 완료된 순서대로 처리한다.
반응형