Halo teman-teman semuanya, setelah kita berhasil menjalankan file JavaScript menggunakan Node.js, kini saatnya kita mengenal lebih dalam tentang global object yang tersedia di environment Node.js.
Kalau sebelumnya kita terbiasa dengan objek global seperti window
di browser, maka di Node.js terdapat objek-objek global yang berbeda namun sangat bermanfaat.
Apa Itu Global Object?
Global object adalah objek yang selalu tersedia di semua file JavaScript yang dijalankan di Node.js, tanpa perlu melakukan import
atau require
.
Berbeda dengan JavaScript di browser yang menggunakan window
, di Node.js objek globalnya adalah global
.
Beberapa Global Object Penting di Node.js
Berikut ini beberapa global object dan fungsi global yang sering digunakan di Node.js:
-
global
Objek global utama di Node.js (mirip window
di browser). Kita bisa menambahkan properti ke dalamnya dan mengaksesnya dari mana saja.
global.nama = "NodeJS";
console.log(global.nama); // NodeJS
Namun, penggunaan global
sebaiknya dibatasi untuk menghindari konflik dan menjaga struktur kode tetap bersih.
-
console
Digunakan untuk menampilkan output ke terminal, sama seperti di browser.
console.log("Halo dari Node.js");
-
process
Menyediakan informasi dan kontrol tentang proses Node.js yang sedang berjalan.
console.log(process.platform); // e.g., 'darwin', 'win32', 'linux'
-
setTimeout()
, setInterval()
, clearTimeout()
, clearInterval()
Fungsi-fungsi ini mirip seperti di browser dan tersedia secara global.
setTimeout(() => {
console.log("Halo setelah 2 detik");
}, 2000);
-
Buffer
Objek global untuk menangani data biner secara efisien.
const buf = Buffer.from("Hello");
console.log(buf);
Global vs Local Scope
Penting untuk diingat bahwa variabel yang dideklarasikan di dalam file JavaScript tidak otomatis menjadi global meskipun berada di level teratas.
Contoh:
let nama = "SantriKoding";
console.log(global.nama); // undefined
Kesimpulan
Node.js menyediakan sejumlah global object yang bisa langsung kita gunakan, seperti global
, console
, process
, fungsi waktu seperti setTimeout
dan buffer
.
Pada artikel selanjutnya, kita akan belajar tentang Module System di Node.js, yaitu bagaimana cara membagi dan menggunakan kode dari file lain menggunakan require
dan exports
.
Terima Kasih