Menu
CoddyTech

كتابة ملف

جزء من قسم أساسيات Node.js في رحلة Node.js على Coddy. الدرس 11 من 24.

تنسى add الملاحظة بمجرد انتهاء البرنامج.

تكتب writeFileSync(path, text) ملفًا، مستبدلةً كل ما كان يحتويه. تحوّل JSON.stringify مصفوفةً إلى نص JSON، وتُنسّقها null, 2 بمسافتين حتى يسهل قراءتها في «الملفات».

import { writeFileSync } from 'node:fs';

const scores = [12, 40];
scores.push(31);
writeFileSync('scores.json', JSON.stringify(scores, null, 2));

يحتوي الملف دائمًا على المصفوفة بأكملها: حمّل الملاحظات، وأضف واحدة، ثم اكتبها كلها مجددًا. تمرير المصفوفة نفسها يؤدي إلى خطأ، لأن الملف يحتوي على نص.

challenge icon

التحدي

سهل
  • يضيف 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