catch (3) 썸네일형 리스트형 <자바스크립트> 프라미스 체이닝과 에러 1. 프라미스 체이닝 * 체이닝 - 콜백에서 언급했듯이 비동기 작업을 순차적으로 처리해야할 상황이 있다. 이 때 프라미스 체이닝을 사용하며 효율적으로 이를 다룰 수 있다. new Promise(function(resolve, reject) { setTimeout(() => resolve(1), 1000); }).then(function(result) { console.log(result); // 1 return result * 2; }).then(function(result) { console.log(result); // 2 return result * 2; }).then(function(result) { console.log(result); // 4 return result * 2; }); - setT.. <자바스크립트> 프라미스 1. 프라미스 * 소개 - 제작 코드(producing code) : 원격에서 스크립트를 불러오는 것 같이 시간이 걸리는 코드 - 소비 코드(consuming code) : 제작 코드의 결과를 사용하는 코드 - 프라미스(promise) : 제작 코드와 소비코드를 연결해 주는 자바스크립트 객체 - 프라미스 문법은 다음과 같다. let promise = new Promise(function(resolve, reject) { // executor }); - 실행자(executor)의 인수 resolve와 reject는 자바스크립트가 자체적으로 제공하는 콜백이다. - 인수로 넘겨준 resolve와 reject중 하나를 반드시 호출해야 한다. - resolve(value) : 성공적으로 일이 끝난 경우 결과를 v.. <자바스크립트> try catch & 에러 1. try catch * 소개 - try catch문법은 에러를 잡아서 다룰 수 있게 도와준다. try { // ... } catch (err) { // ... } - 위와 같은 꼴을 하고 있으며, 먼저 try 내부의 코드를 실행한다. 에러가 없으면 catch를 건너뛰고 에러가 있으면 임의의 인자 err에 에러객체를 담아 catch를 실행한다. - 이렇게 하면 에러가 발생하더라도 스크립트가 죽지 않고 에러를 별도로 처리할 수 있다. - try catch는 런타임 에러에만 동작하므로 우선 실행 가능한 코드를 작성해야한다. - try catch는 동기적으로 작동하므로 try내부에 스케줄 된 코드를 작성하면 에러를 잡아내기 힘들다. 이럴 때는 스케줄된 함수 내부에 try catch를 작성하면 된다. * 에러.. 이전 1 다음