더북(TheBook)

asyncOrderPromise.js

const fs = require('fs').promises;

console.log('시작');
fs.readFile('./readme2.txt')
  .then((data) => {
    console.log('1번', data.toString());
    return fs.readFile('./readme2.txt');
  })
  .then((data) => {
    console.log('2번', data.toString());
    return fs.readFile('./readme2.txt');
  })
  .then((data) => {
    console.log('3번', data.toString());
    console.log('끝');
  })
  .catch((err) => {
    console.error(err);
});

실행 결과는 asyncOrder.js와 같습니다.

지금까지 동기 메서드와 비동기 메서드의 차이를 알아봤습니다. 이제 readFilereadFileSync에서 받아온 datadata.toString()으로 변환하는 이유를 알아볼 차례입니다. 결론부터 말하자면 toString 메서드를 사용하는 이유는 data가 버퍼이기 때문입니다. 버퍼가 무엇인지 알아봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.