Menu
CoddyTech

Promise 결과

Coddy Node.js 여정의 Node.js 기초 섹션에 포함된 레슨. 33개 중 19번째.

프라미스는 나중에 도착할 결과를 나타냅니다. node:fs의 콜백 버전과 달리, node:fs/promises의 readFile은 콜백을 받지 않고 프라미스를 반환합니다. 이 프라미스의 .then 메서드는 읽기에 성공했을 때 결과와 함께 호출할 함수를 받습니다.

import { readFile } from 'node:fs/promises';
readFile('name.txt', 'utf8').then((name) => {
    console.log('Hello, ' + name);
});

name 매개변수에는 프라미스가 아니라 파일의 텍스트가 담깁니다. 텍스트에 의존하는 작업은 여기에 작성합니다. 지금은 파일이 제공되어 있고 읽기가 성공합니다. 다음 단계에서는 읽기에 실패하는 경우를 처리합니다.

challenge icon

챌린지

쉬움

먼저 practice.js를 실행하세요. 그러면 Note: [object Promise]가 출력됩니다. 프로그램이 텍스트를 나중에 완료될 결과가 아니라 프로미스와 결합하고 있습니다.

.then 콜백을 사용해 읽기가 완료되면 파일 내용을 뒤에 붙여 Note: 를 출력하세요. 인수를 지정하지 않으면 note.txt를 읽어 Note: Buy milk가 출력됩니다. other.txt도 시도해 보세요. Note: Call Ada가 출력되어야 합니다.

직접 해보기

import { readFile } from 'node:fs/promises';
const file = process.argv[2] ?? 'note.txt';
console.log('Note: ' + readFile(file, 'utf8'));

Node.js 기초의 모든 레슨

직접 연습해 보세요: Express 플레이그라운드