본문 바로가기

728x90

자바스크립트

[JavaScript] Promise대신 사용할 수 있는 async / await 2017년에 나왔고 ES6라고 할 수는 없고 ES8부터 Promise를 대신하여 사용할 수 있는 문법이 있습니다. async / await이라는 키워드입니다. 이 키워드는 Promise와 then을 더 쉽게 만들어주는 문법입니다. async / await async 키워드를 사용하면 Promise 오브젝트가 자동으로 생성됩니다. 이 키워드는 function 선언 앞에서만 붙일 수 있습니다. async function fc(){ 1+1; } function앞에 async를 붙임으로써 fc()는 Promise가 되었습니다. 이제 fc()는 then을 사용할 수 있습니다. async function fc(){ return 1+1; } fc().then(function(result){ console.log(re.. 더보기
[JavaScript] ES6 프로미스(Promise) 프로미스(Promise) 프로미스(Promise)는 성공하면 then()안의 코드를, 실패하면 catch()안의 코드를 실행해주는 함수 입니다. 동기방식을 비동기방식으로 바꿔주는 함수가 아닙니다. Promise 코드를 작성할 때 성공과 실패 상황을 알 수 있도록 해야 합니다. 콜백함수 디자인패턴이 마음에 안드는 분들은 Promise 디자인패턴을 사용하시면 됩니다. Promise는 자바스크립트의 새로운 기능이라기보다는 코드/함수 디자인 패턴일 뿐입니다. Promise의 구조는 이렇게 됩니다. var promise1 = new Promise(); promise1.then(function(){ // 프로미스가 성공했을 경우 실행할 코드1 }).then(function(){ // 프로미스가 성공했을 경우 실행할.. 더보기
[JavaScript] 동기 / 비동기처리와 콜백함수란 무엇인가? 동기(Synchronous) / 비동기(Asynchronous) 자바스크립트는 코드 한 줄씩 순차적으로 실행되는 동기(Synchronous)처리 방식입니다. 자바스크립트를 실행하는 웹브라우저는 스텍(Stack)이라는 코드 실행 공간이 있습니다. 그리고 그 곳에서 코드를 한줄한줄 차례로 실행합니다. 자바스크립트 뿐만 아니라 대부분의 프로그래밍 언어들이 이러한 특징을 가지고 있습니다. console.log(1); console.log(2); console.log(3); -------------------- 결과 1 2 3 그리고 자바스크립트는 비동기(Asynchronous)처리와 유사한 방식을 사용할 수도 있습니다. 예를들어 특정 위치의 코드를 1초 지연한 뒤 코드를 실행하고 싶을 때가 있습니다. 그래서 아.. 더보기

728x90