12.21

홍왕열·2021년 12월 21일
0

내장 모듈 사용

브라우저에서 다른 파일을 불러올 때에는 </script/> tag를 이용했다.

</script/ src="불러오고싶은_스크립트.js"></script/>

Node.js에서는 자바스크립트 코드 가장 상단에 require 구문을 이용하여 다른 파일을 불러온다.

비동기함수

fs.readFile(path[, options], callback)
https://nodejs.org/dist/latest-v14.x/docs/api/fs.html#fs_fs_readfile_path_options_callback

-메소드 fs.readFile 은 비동기적으로 파일 내용 전체를 읽습니다. 이 메소드를 실행할 때에는 인자 세 개를 넘길 수 있습니다.



callback 기본구조

Promise

참조하기 - https://joshua1988.github.io/web-development/javascript/promise-for-beginners/#promise%EA%B0%80-%EB%AD%94%EA%B0%80%EC%9A%94

Promise의 3가지 상태(states)
Promise를 사용할 때 알아야 하는 가장 기본적인 개념이 바로 Promise의 상태(states)다.
여기서 말하는 상태란 Promise의 처리 과정을 의미한다.
new Promise()로 프로미스를 생성하고 종료될 때까지 3가지 상태를 갖는다.

Pending(대기) : 비동기 처리 로직이 아직 완료되지 않은 상태
Fulfilled(이행) : 비동기 처리가 완료되어 프로미스가 결과 값을 반환해준 상태
Rejected(실패) : 비동기 처리가 실패하거나 오류가 발생한 상태

Promise 기본 구조

무조건 then을 사용하는 것은 아니다

Promise.all

기본 구조
Promise.all([함수]).then()=>{}
promise.all은 promise를 받아서 쓰는 것. 즉, 안에 함수 자리에는 promise가 들어가야 한다.

then

promise.then(successHandler, failureHandler);

then에는 무조건 함수가 들어간다.
함수에 임의의 매개변수를 내마음대로 넣는다.

then은 resolve가 이행상태가 되어 then으로 넘어오면 seccessHandler인 함수를 이용하여 처리하여 결과값을 받을 수 있다.

catch

.catch () 함수는 실패 핸들러 함수.
reject를 호출하면 실패 상태가 되고 실패 상태가 되면 catch()로 받을 수 있다.

async/await

참조 - https://javascript.info/async-await

만약에 let result = new promise(비동기 코드)를 할당한다고 할 때, pending상태로 할당이 된다.
그렇다면 결과값이 없는 상태로 들어가게 된다.
그래서 await를 사용하여 fulfilled나 rejected상태로 만들어서 할당을 해주어야 한다.

await란 비동기(promis)가 끝날 때까지 있다가 끝나면 실행된다.
즉, await 뒤에 있는 비동기 코드가 완료될 때까지 기다린다.

기본적으로 await를 쓰려면 async를 선언해야한다.
그렇게 된다면 그 함수 자체의 return값은 전부 promise가 된다!!
즉, promise로 return을 안 해도 된다.

sync 위치와 await 위치를 잘 살펴보자

기본 예시

profile
코딩 일기장

0개의 댓글