Запись в файл
Часть раздела Основы Node.js путешествия по Node.js на Coddy. Урок 11 из 24.
add забывает заметку, как только программа завершается.
writeFileSync(path, text) записывает файл, заменяя всё его содержимое. JSON.stringify преобразует массив в текст JSON, а null, 2 задаёт отступ в два пробела, чтобы содержимое было удобно читать в Files.
import { writeFileSync } from 'node:fs';
const scores = [12, 40];
scores.push(31);
writeFileSync('scores.json', JSON.stringify(scores, null, 2));Файл всегда содержит весь массив: загрузи заметки, добавь одну и запиши их все обратно. Передача самого массива вызывает ошибку, потому что файл хранит текст.
Задание
Легкоaddдобавляет заметку и сохраняет все заметки вnotes.json.- Она выводит
Saved note 3.с номером новой заметки.
Запусти node notes.js add Buy bread, затем list и открой notes.json в разделе «Файлы». Затем выполни clear, а после — ещё раз add на пустом диске.
Попробуйте сами
import { existsSync, readFileSync } from 'node:fs';
const file = 'notes.json';
const store = {
notes: existsSync(file) ? JSON.parse(readFileSync(file, 'utf8')) : [],
add(text) {
this.notes.push(text);
return this.notes.length;
},
};
export default store;
Все уроки раздела Основы Node.js
1Запуск JavaScript в Node
Знакомство с NodeАргументы командной строкиКоманды