Node.js основи

Вбудовані модулі: fs та util

📖 Теорія

Модуль fs (file system) — синхронна та асинхронна робота з файлами:

const fs = require('fs');

💡 Приклад коду
Вивід:

                            
📝 ЗАВДАННЯ (3)
1.
Завдання 1: util.format
10 XP
Використай util.format для виведення:
1. 'Сервер запущено на порту 3000'
2. 'Помилка 404: Сторінка /about не знайдена'
3. 'Час виконання: 0.123 сек'
💡 Підказка: util.format('Рядок %s, число %d', str, num)
🔓 Розв'язок:
const util = require('util');
console.log(util.format('Сервер запущено на порту %d', 3000));
console.log(util.format('Помилка %d: Сторінка %s не знайдена', 404, '/about'));
console.log(util.format('Час виконання: %d сек', 0.123));
Вивід:

                                

2.
Завдання 2: Запис та читання файлу
20 XP
1. Запиши у файл '/tmp/test.txt' рядок 'Node.js fileystem test'
2. Прочитай файл назад і виведи його вміст
3. Виведи розмір файлу через fs.statSync
💡 Підказка: fs.writeFileSync, fs.readFileSync, fs.statSync('.').size
🔓 Розв'язок:
const fs = require('fs');
fs.writeFileSync('/tmp/test.txt', 'Node.js filesystem test', 'utf8');
const content = fs.readFileSync('/tmp/test.txt', 'utf8');
console.log(content);
const stats = fs.statSync('/tmp/test.txt');
console.log(stats.size);
Вивід:

                                

3.
Завдання 3: CSV генератор
30 XP
Згенеруй CSV-файл '/tmp/products.csv' з вмістом:
id,name,price
1,Хліб,25
2,Молоко,45
3,Яйця,80

Потім прочитай і виведи рядки де ціна > 30.
💡 Підказка: Записуй через writeFileSync. Для парсингу: split('\n'), потім кожен рядок split(',')
🔓 Розв'язок:
const fs = require('fs');
const csv = 'id,name,price\n1,Хліб,25\n2,Молоко,45\n3,Яйця,80';
fs.writeFileSync('/tmp/products.csv', csv, 'utf8');
const lines = fs.readFileSync('/tmp/products.csv', 'utf8').split('\n');
const header = lines[0];
console.log(header);
lines.slice(1).forEach(line => {
  const [id, name, price] = line.split(',');
  if (Number(price) > 30) console.log(`${id},${name},${price}`);
});
Вивід: