Duplicate entry

Copy-pasting from Stack Overflow is like cooking with a recipe book. You may end up with a decent meal, but you'll never truly master the art of programming.

readFile dan readFileSync di nodejs

Kedua fungsi tersebut, readFile dan readFileSync, digunakan dalam Node.js untuk membaca isi dari file pada sistem berkas. Perbedaan utama antara keduanya adalah sifat asynchronous (asinkron) atau synchronous (sinkron) saat membaca file.

readFile adalah fungsi asynchronous yang berarti kode program akan terus berjalan sementara Node.js membaca file secara asynchronous (tidak langsung) dan akan memanggil callback setelah selesai membaca file. Karena asinkron, fungsi ini cocok untuk digunakan saat membaca file yang cukup besar atau saat program membutuhkan waktu untuk melakukan tugas lain selama file dibaca.

const fs = require('fs');

fs.readFile('/path/to/file', (err, data) => {
  if (err) throw err;
  console.log(data);
});

readFileSync, di sisi lain, adalah fungsi synchronous yang berarti kode program akan berhenti sementara Node.js membaca file dan akan melanjutkan eksekusi kode setelah selesai membaca file. Fungsi ini cocok digunakan saat membaca file yang relatif kecil atau saat program tidak memerlukan tugas lain selama file dibaca.

Contoh penggunaan readFileSync:
const fs = require('fs');

const data = fs.readFileSync('/path/to/file');
console.log(data);

Karena readFileSync bersifat synchronous, jika ada kesalahan saat membaca file, maka akan menyebabkan eksekusi program berhenti dan menghasilkan kesalahan (error). Sementara pada readFile, karena bersifat asynchronous, kesalahan akan ditangani oleh callback, sehingga program dapat melanjutkan eksekusi kode lainnya.

Kesimpulannya, jika file yang ingin dibaca cukup besar atau program membutuhkan waktu untuk melakukan tugas lain selama file dibaca, maka lebih baik menggunakan readFile yang asinkron. Namun, jika file yang ingin dibaca relatif kecil dan program tidak memerlukan tugas lain selama file dibaca, maka readFileSync dapat digunakan sebagai alternatif.
posted by ismail okta kurniawan in Coding Sampah and have No Comments

Place your comment

Please fill your data and comment below.
Name
Email
Website
Your comment

Skip to toolbar