Menu
CoddyTech

Чтение файла

Часть раздела Основы Node.js путешествия по Node.js на Coddy. Урок 10 из 24.

Каждый запуск начинается с одних и тех же трёх заметок, потому что они хранятся только в памяти.

readFileSync(path, 'utf8') из node:fs считывает файл как строку. Файл с заметками содержит JSON — текстовый формат данных, записанных в виде массивов и объектов JavaScript, — а JSON.parse преобразует этот текст в массив. При чтении отсутствующего файла возникает ошибка ENOENT, поэтому сначала проверьте файл с помощью existsSync.

import { existsSync, readFileSync } from 'node:fs';

const scores = existsSync('scores.json')
    ? JSON.parse(readFileSync('scores.json', 'utf8'))
    : [];
console.log(scores.length);

Без 'utf8' вы получите Buffer — исходные байты файла вместо строки.

challenge icon

Задание

Легко
  • store.js загружает заметки из notes.json вместо фиксированного списка.
  • Если файла notes.json нет, хранилище запускается пустым, а list выводит No notes yet.

Запусти node notes.js list. Затем запусти node notes.js clear, чтобы удалить файл, а потом снова выполни list. Сброс файлов восстановит файл.

Попробуйте сами

// Загружайте заметки из notes.json вместо этого списка.
const store = {
    notes: ['Buy milk', 'Call Ada', 'Water the plants'],
    add(text) {
        this.notes.push(text);
        return this.notes.length;
    },
};

export default store;
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы Node.js