비동기
-
[Async function] async/await 비동기 처리 :: 마이구미Javascript 2018. 8. 22. 11:51
이 글은 ES8(ECMA2017) 스펙에서 정의된 async/await 키워드를 다뤄본다.async/await 를 사용하기 위해서는 Promise 의 이해는 필요하다.이 글에서는 다루지 않고, 오로지 async/await 에 초점을 맞춰 예제 위주로 진행한다.실질적인 사용에 있어, 도움을 줄 수 있는 글이 될 것이라 생각한다.참고한 글 - https://developers.google.com/web/fundamentals/primers/async-functions ES8 에서 정의된 비동기 함수(async function) 는 용어 그대로, 비동기 처리를 위함이다.async/await 를 사용하는 가장 큰 이유는 코드 품질의 향상이다.코드를 읽기 좋게 해주고, 작성에 있어서도 굉장한 간결함을 나타낸다. ..
-
Javascript: 타이머는 어떻게 동작하는가? :: 마이구미Javascript 2018. 4. 30. 00:16
이 글은 자바스크립트 내부에서의 setTimeout, setInterval 과 같은 타이머들의 동작을 알아본다.타이머들은 비동기로 처리되는데 이와 관련된 싱글 스레드, 비동기 처리등과 같은 또한 얻을 수 있을 것이다.참고 자료 - https://johnresig.com/blog/how-javascript-timers-work/ 글의 주제는 두 가지 의문을 가지고 글을 진행할 것이다. 첫번째 의문은 다음과 같다. 자바스크립트에서 타이머 관련 함수는 2가지로 볼 수 있다. setTimeout() - 일정 시간 뒤에 함수가 실행된다. * ms(1000분의 1초)setInterval() - 일정 시간마다 함수가 실행된다. 즉, 지연시간(delay)을 조작할 수 있다.하지만 100ms 후 실행을 원하는 함수가 있..
-
자바스크립트 Promise 동기 프로그래밍 : 마이구미Javascript 2016. 6. 9. 21:16
javascript promise에 대해 알아보자!http://mygumi.tistory.com/328 최신 글을 참고하자. 자바스크립트를 하다보면 다들 한번씩은 겪었을 것이다. 비동기 프로그래밍의 문제점을 관한 이야기이다. 그래서 필요한 경우는 본인이 원하는 순서대로 제어하고 싶다. 정말 간단한 예를 살펴보자. $('.button').click(function(){ $.getJSON('package.json',function(result) { console.log("?"); }); console.log("!"); }); 다들 실행 결과는 알 것이다. 콘솔창에는 느낌표부터 출력 후 물음표가 출력될 것이다. 처음에는 그냥 setTimeout으로 시간을 걸어 해결할 것이다. 콜백으로 해결한다는 둥 Watef..