비동기 동작

제너레이터란?ES6에 도입된 제너레이터는 코드 블록의 실행을 일시 중지 했다가 필요한 시점에 재개할 수 있는 특수한 함수다.제너레이터 함수는 함수 호출자에게 함수 실행 제어권을 양도할 수 있다.제너레이터 함수는 함수 호출자와 함수의 상태를 주고받을 수 있다.제너레이터 함수를 호출하면 제너레이터 객체를 반환한다. 제너레이터 함수의 정의제너레이터 함수는 function* 키워드로 선언하며 하나 이상의 yield 표현식을 포함한다.// 제너레이터 함수 선언문function* genDecFunc() { yield 1;}// 제너레이터 함수 표현식const genExpFunc = function* () { yield 1;};// 제너레이터 메서드const obj = { * genObjMethod() { ..
JS는 비동기 처리를 위해 콜백 함수를 사용했지만, 콜백 지옥 현상으로 인해 가독성이 떨어지고 에러 처리가 어렵다는 문제가 있었다. ES6에서는 Promise를 도입해 콜백 함수를 통한 비동기 방식의 단점을 보완하며 비동기 처리 시점을 명확하게 표현할 수 있게 되었다. 비동기 처리를 위한 콜백 패턴의 단점콜백 헬비동기 함수 내부의 비동기 동작은 호출된 비동기 함수의 동작이 종료된 다음 완료된다. 이로 인해 비동기 함수 내부의 비동기 동작의 결과를 외부로 반환하거나 상위 스코프의 변수에 할당할 수 없다. let todos;// GET 요청을 위한 비동기 함수const get = url => { const xhr = new XMLHttpRequest(); xhr.open('GET', url); xhr...
58청춘
'비동기 동작' 태그의 글 목록