JavaScript (JS) adalah tulang punggung interaktivitas di web modern. Meskipun sintaksnya relatif fleksibel, cara Anda menuliskannya sangat menentukan kinerja, keterbacaan, dan kemudahan pemeliharaan kode Anda di masa depan. Menguasai cara penulisan yang benar adalah langkah krusial setelah memahami dasar-dasar variabel dan fungsi.
Secara tradisional, JavaScript ditempatkan di dalam tag <script>. Ada dua lokasi utama untuk menempatkannya:
<head>: Jika script diletakkan di sini, browser akan memuat dan mengeksekusi script sebelum mulai merender konten HTML. Ini sering menyebabkan pemblokiran rendering (render-blocking), yang memperlambat tampilan awal halaman.</body>: Ini adalah praktik terbaik yang direkomendasikan. Dengan menempatkannya di akhir <body>, HTML dimuat sepenuhnya terlebih dahulu, memastikan pengguna melihat konten lebih cepat, baru kemudian JavaScript dieksekusi.Untuk mengatasi masalah pemblokiran rendering pada script di <head>, gunakan atribut:
<script src="path/to/script.js" defer></script>
<script src="path/to/other.js" async></script>
async: Script diunduh secara paralel dengan parsing HTML, dan dieksekusi segera setelah selesai diunduh, menginterupsi parsing HTML.defer: Script diunduh secara paralel, tetapi eksekusi ditunda hingga seluruh dokumen HTML selesai di-parse. Ini adalah pilihan terbaik untuk script yang bergantung pada struktur DOM.Konsistensi dalam penamaan variabel, fungsi, dan konstanta adalah kunci keterbacaan. JavaScript umumnya menggunakan konvensi Camel Case (misalnya, hitungTotalBelanja).
Aturan umum yang diikuti oleh mayoritas komunitas:
camelCase (misalnya, namaPengguna).UPPER_SNAKE_CASE (misalnya, MAX_SIZE), terutama untuk nilai yang benar-benar tidak berubah.PascalCase (misalnya, class PengelolaData).Selalu gunakan const atau let daripada var untuk deklarasi variabel agar memanfaatkan cakupan blok (block scoping) dan menghindari isu *hoisting* yang membingungkan.
Komentar adalah dokumentasi langsung di dalam kode Anda. Hindari komentar yang hanya menyatakan apa yang sudah jelas dari kode itu sendiri.
// BURUK: Variabel untuk menyimpan angka
let x = 10;
// BAIK: Menjelaskan tujuan atau logika kompleks
/**
* Fungsi ini menghitung diskon 15% jika jumlah pembelian melebihi batas tertentu.
* @param {number} total - Total belanja sebelum diskon.
* @returns {number} Total belanja setelah penerapan diskon.
*/
function terapkanDiskon(total) {
if (total > 500000) {
return total * 0.85; // 100% - 15%
}
return total;
}
JavaScript mendukung kutip tunggal ('), kutip ganda ("), dan *backticks* (`). Meskipun ketiganya bisa digunakan untuk string, penggunaan *backticks* sangat dianjurkan untuk string multiline dan interpolasi variabel.
// Metode lama (Kurang baik untuk string kompleks)
let sapaanLama = "Halo, " + nama + ". Selamat datang di sistem.";
// Metode modern (Template Literal)
let sapaanBaru = \`Halo, ${nama}. Selamat datang di sistem.
Anda berhasil masuk.\`;
Penggunaan template literal (${variabel}) membuat string lebih mudah dibaca dan dikelola, serta menghindari penggabungan string yang berantakan.
Meskipun JavaScript tidak memaksa indentasi (spasi atau tab) untuk bekerja, indentasi adalah aspek terpenting dari keterbacaan kode. Hampir seluruh pengembang JavaScript modern menggunakan 2 atau 4 spasi untuk setiap tingkat blok kode (misalnya, di dalam if, for, atau fungsi).
Selain itu, pastikan setiap statement diakhiri dengan titik koma (;) meskipun JavaScript memiliki fitur *Automatic Semicolon Insertion* (ASI). Bergantung pada ASI dapat menyebabkan bug yang sulit dilacak dalam kondisi tertentu. Selalu akhiri baris kode Anda dengan titik koma untuk kepastian.
Dengan mengikuti panduan penulisan ini—mulai dari penempatan script yang benar, standar penamaan yang konsisten, hingga penggunaan fitur modern seperti template literal—kode JavaScript Anda akan lebih mudah dipelihara, dibaca oleh rekan tim, dan tentu saja, lebih andal saat dieksekusi oleh mesin browser.