Bestanden Gebruiken als Eenvoudige Opslag
Veeg om het menu te tonen
Tot nu toe heb je geleerd hoe je:
- Gegevens uit een bestand leest;
- Gegevens naar een bestand schrijft;
- Nieuwe inhoud toevoegt.
Nu is het tijd om bestanden te gebruiken als een eenvoudig opslagsysteem.
Waarom Gestructureerde Gegevens Nodig Zijn
Alleen platte tekst opslaan is niet voldoende voor echte toepassingen.
Bijvoorbeeld:
First note
Second note
Dit is lastig te beheren omdat:
- We niet eenvoudig een specifieke notitie kunnen bijwerken;
- We gegevens niet kunnen organiseren;
- We geen extra informatie kunnen toevoegen.
JSON Gebruiken voor Opslag
Om gestructureerde gegevens op te slaan, gebruiken we JSON.
JSON lijkt op een JavaScript-object:
[
{ "text": "First note" },
{ "text": "Second note" }
]
Met dit formaat kunnen we:
- Meerdere items opslaan;
- Gegevens duidelijk organiseren;
- Ermee werken in code.
Stap 1: Gegevens uit een Bestand Lezen
const fs = require('fs');
const data = fs.readFileSync('notes.json', 'utf-8');
Dit levert een string op.
Stap 2: JSON Converteren naar JavaScript
const notes = JSON.parse(data);
Nu is notes een echte array waarmee we kunnen werken.
Stap 3: Gegevens Bijwerken
notes.push({ text: 'New note' });
We voegen een nieuwe notitie toe aan de array.
Stap 4: Gegevens Terug Opslaan in het Bestand
fs.writeFileSync('notes.json', JSON.stringify(notes));
JSON.stringifyzet JavaScript terug om naar JSON;- het bestand wordt bijgewerkt met de nieuwe gegevens.
Volledig Voorbeeld
const fs = require('fs');
// Read file
const data = fs.readFileSync('notes.json', 'utf-8');
// Convert to JS
const notes = JSON.parse(data);
// Update data
notes.push({ text: 'Learn Node.js' });
// Save back
fs.writeFileSync('notes.json', JSON.stringify(notes));
Omgaan met Eerste Uitvoering (Leeg Bestand)
Als het bestand niet bestaat of leeg is, zal de app crashen.
Dit kunnen we oplossen door te starten met een lege array:
let notes = [];
try {
const data = fs.readFileSync('notes.json', 'utf-8');
notes = JSON.parse(data);
} catch (error) {
notes = [];
}
Was alles duidelijk?
Bedankt voor je feedback!
Sectie 1. Hoofdstuk 24
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Sectie 1. Hoofdstuk 24