Filesystem
Filesystem mengelola dan mengakses semua data komputer. Sangat penting untuk melimitasi JavaScript untuk mengakses filesystem saat menjalankan kode JavaScript pada browser. Sandboxing adalah teknik yang melindungi kita dari program jahat dan pencurian yang dapat mengambil privasi pengguna.
Apa yang terjadi dengan JavaScript yang digunakan di back-end? Limitasi tentu tetap ada, tetapi tidak seketat ketika JavaScript yang digunakan pada browser. Karena pengembangan back-end sering mengakses atau menulisa berkas di dalam komputer, filesystem juga sangat penting di back-end.
Node.js menyediakan core modules fs, yang memudahkan akses ke filesystem. Semua method di module fs tersedia dalam dua versi: asynchronous (default) dan synchronous.
Method fs.readFile() dapat digunakan untuk mengakses berkas di komputer. Method ini menerima tiga argumen: lokasi berkas, encoding, dan callback function yang akan dipanggil saat berkas berhasil atau gagal diakses.
const fs = require('fs');
const fileReadCallback = (error, data) => {
if(error) {
console.log('Gagal membaca berkas');
return;
}
console.log(data);
};
fs.readFile('todo.txt', 'UTF-8', fileReadCallback);
Sebagai alternatif, kita juga bisa gunakan method versi synchronous fs.readFileSync().
const fs = require('fs');
const data = fs.readFileSync('todo.txt', 'UTF-8');
console.log(data);
Latihan: Filesystem
Pada latihan kali ini, Anda akan ditugaskan untuk membuat program JavaScript yang dapat membaca teks dari berkas .txt. Karena Anda sudah belajar filesystem, tentu ini tidak akan sulit.
Silakan buat folder baru dengan nama filesystem. Di dalamnya buat dua berkas, yakni index.js dan notes.txt.
Di dalam masing-masing berkas, tuliskan kode/teks berikut:
- notes.txt
- index.js
Di hari minggu saya akan:
1. Berolahraga pagi.
2. Membersihkan halaman rumah.
3. Menonton film.
4. Membaca buku Laskar Pelangi.
// TODO: tampilkan teks pada notes.txt pada console.
Tugas Anda tertulis jelas seperti yang ada pada berkas index.js. Cobalah tampilkan teks pada berkas notes.txt pada console menggunakan filesystem. Jika TODO sudah selesai dikerjakan, eksekusi berkas index.js dengan perintah:
node ./filesystem/index.js
Bila TODO berhasil Anda kerjakan, maka outputnya tampak seperti ini:
Tips: Anda bisa gunakan method
path.resolve(__dirname, 'notes.txt');
Dari core modules path dalam menetapkan alamat berkas secara lengkap dan dinamis.
0 Komentar
Berkomentar dengan bijak