자바스크립트 비동기 처리 활용 예

2019. 10. 16. 15:34JavaScript

728x90

1. Ajax Web API 요청(서버에서 데이터를 응답받을때까지 대기해야 하니까)

2. 파일 읽기

3. 암호화/복호화

4. 작업 예약

 

function work(callback){ //work function을 다 수행한 후에 callback을 실행한다.

  setTimeout(() => {
    const start = Date.now(); //Date.now() js 내장기능. 현재 날짜를 숫자형태로 표시

    for (let i = 0; i< 1000000000; i++){

    }
    const end = Date.now();
    console.log(end - start + 'ms');

    callback(end - start);
  }, 0); // 0만큼의 시간이 흐른 후 특정작업을 하겠다는 뜻. 실제로는 4밀리세컨드 정도.

}

console.log('작업 시작!');
work((ms) => {
  console.log('작업이 끝났습니다');
  console.log(ms + 'ms 걸렸다고 합니다');
});
console.log('다음 작업!');

 

저렇게 function work(callback)처럼 매개변수로 function을 넣는 것 외에도

1.  promise

2. async

3. awaits를 쓸 수도 있다.

728x90
반응형