에러 (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. 콜백 * 소개 - 실무에서 비동기 동작처리를 할 때 생기는 문제를 먼저 살펴보자. - 대표적인 비동기 동작으로 스크립트나 모듈을 로딩하는 것이 있다. function loadScript(src) { let script = document.createElement('script'); script.src = src; document.head.append(script); } - 위는 src에 있는 스크립트를 불러와서 다큐먼트에 추가하는 함수이다. 이 안에는 우리가 사용하고 싶은 harryFunc라는 함수가 들어있다고 가정하자. loadScript('/harry/script.js'); harryFunc(); - 위에서 정의한 함수를 사용하여 스크립트를 불러오고 함수를 실행했다. 그러나 안타깝게도 에러가 발.. <자바스크립트> try catch & 에러 1. try catch * 소개 - try catch문법은 에러를 잡아서 다룰 수 있게 도와준다. try { // ... } catch (err) { // ... } - 위와 같은 꼴을 하고 있으며, 먼저 try 내부의 코드를 실행한다. 에러가 없으면 catch를 건너뛰고 에러가 있으면 임의의 인자 err에 에러객체를 담아 catch를 실행한다. - 이렇게 하면 에러가 발생하더라도 스크립트가 죽지 않고 에러를 별도로 처리할 수 있다. - try catch는 런타임 에러에만 동작하므로 우선 실행 가능한 코드를 작성해야한다. - try catch는 동기적으로 작동하므로 try내부에 스케줄 된 코드를 작성하면 에러를 잡아내기 힘들다. 이럴 때는 스케줄된 함수 내부에 try catch를 작성하면 된다. * 에러.. 이전 1 다음