JavaScript adalah bahasa pemrograman yang banyak digunakan untuk menambahkan perilaku interaktif pada website. Contohnya adalah memperbarui jumlah barang dalam keranjang, menjalankan pencarian langsung, dan menampilkan hasil perhitungan tanpa memuat ulang seluruh halaman.
Untuk mengenal apa itu JavaScript dan cara belajar JavaScript dengan mudah, mulailah dari contoh kecil yang hasilnya bisa langsung dilihat. Anda tidak harus membuat aplikasi besar atau mempelajari banyak alat sekaligus.
Panduan ini membahas fungsi JavaScript, hubungannya dengan HTML dan CSS, urutan materi belajar, serta latihan membuat tombol penghitung klik. Latihan tersebut dapat dijalankan menggunakan browser dan editor teks.
Apa Itu JavaScript?
JavaScript merupakan bahasa pemrograman yang digunakan untuk mengolah data, menjalankan logika, dan merespons suatu kejadian. Dalam pengembangan website, JavaScript dapat berinteraksi dengan halaman melalui fasilitas yang disediakan browser.
Misalnya, ketika pengunjung menekan tombol Tambah, program menerima kejadian klik, mengubah nilai penghitung, lalu memperbarui angka pada layar. Rangkaian tersebut menjadi dasar banyak interaksi yang Anda temukan sehari-hari.
JavaScript berbeda dari Java. Keduanya merupakan bahasa pemrograman yang berbeda meskipun namanya mirip. Untuk mulai belajar JavaScript, Anda tidak perlu mempelajari Java terlebih dahulu.
Penjelasan pengantar tersedia dalam panduan JavaScript dari MDN, yang dapat digunakan sebagai rujukan selama belajar.
Apa Saja Fungsi JavaScript?
JavaScript dapat digunakan untuk memperbarui isi halaman berdasarkan tindakan pengguna. Contohnya adalah mengganti teks pemberitahuan, menyaring daftar produk, atau menghitung total belanja ketika jumlah barang berubah.
JavaScript juga dapat membantu pemeriksaan formulir di browser. Misalnya, program menampilkan pesan ketika isian belum sesuai. Namun, pemeriksaan di browser tidak menggantikan validasi di server karena kode pada sisi pengguna dapat diubah atau dilewati.
Selain itu, JavaScript dapat meminta data dari layanan lain melalui API, kemudian mengolah dan menampilkannya pada halaman. Contohnya adalah aplikasi yang menampilkan status pesanan setelah menerima respons dari server.
Penggunaannya tidak terbatas pada browser. Melalui lingkungan eksekusi seperti Node.js, JavaScript juga dapat dijalankan di luar browser, termasuk untuk membangun layanan server dan alat otomatisasi. Meskipun bahasanya sama, fasilitas yang tersedia pada masing-masing lingkungan dapat berbeda.
Perbedaan JavaScript, HTML, dan CSS
HTML menyusun struktur dan makna konten halaman, seperti judul, paragraf, formulir, serta tombol. CSS mengatur tampilannya, termasuk warna, ukuran tulisan, jarak, dan tata letak. JavaScript menambahkan logika serta perilaku yang merespons interaksi.
Pada latihan penghitung klik, HTML menyediakan tombol dan tempat menampilkan angka. CSS dapat membuat tampilannya lebih menarik. JavaScript bertugas menambah nilai setiap kali tombol ditekan.
Anda dapat mempelajari dasar bahasa JavaScript tanpa menguasai seluruh HTML dan CSS. Namun, pemahaman HTML dasar akan sangat membantu ketika latihan mulai melibatkan halaman web. CSS dapat dipelajari bertahap sambil memperbaiki tampilan proyek.
1. Siapkan Browser, Editor, dan Tempat Latihan
Untuk latihan awal, siapkan browser modern dan editor teks. Buat satu folder khusus agar file latihan mudah ditemukan. Anda belum perlu menyewa hosting atau memasang framework untuk menjalankan contoh sederhana dalam artikel ini.
Kenali juga Developer Tools pada browser. Di Chrome, Anda dapat membuka menu alat pengembang lalu memilih Console. Panel ini dapat digunakan untuk menjalankan potongan JavaScript dan membaca pesan kesalahan. Rujuk panduan Console Chrome DevTools jika belum terbiasa.
Coba ketik perintah berikut di Console, kemudian tekan Enter.
console.log("Saya mulai belajar JavaScript");
console.log(10 + 5);
Hasilnya adalah pesan teks dan angka 15. Teks di dalam tanda kutip diperlakukan sebagai string, sedangkan 10 dan 5 pada contoh tersebut merupakan angka. console.log digunakan untuk menampilkan informasi selama proses belajar atau pemeriksaan kode.
Setelah berhasil, ubah isi pesan dan angka yang digunakan. Kebiasaan mengubah contoh membantu Anda memahami hubungan antara kode dan hasilnya.
2. Pahami Variabel, Tipe Data, dan Operator
Variabel memungkinkan program menyimpan nilai yang digunakan dalam proses berikutnya. Dalam JavaScript modern, Anda akan sering menggunakan let dan const. Gunakan let ketika nilai variabel perlu ditetapkan ulang, misalnya jumlah klik. Gunakan const ketika variabel tidak perlu ditetapkan ulang.
Perlu dibedakan bahwa const mencegah penetapan ulang variabel, bukan otomatis membuat isi object atau array menjadi tidak dapat diubah. Untuk tahap awal, pahami terlebih dahulu perbedaan antara mengganti nilai variabel dan mengubah isi data yang dirujuknya.
Mulailah dengan tipe data yang sering digunakan: string untuk teks, number untuk angka, serta boolean untuk nilai true atau false. Setelah itu, pelajari array untuk daftar data dan object untuk kumpulan properti, seperti nama dan harga sebuah produk.
Kenali operator penjumlahan, pengurangan, perkalian, serta perbandingan. Perhatikan bahwa "10" merupakan teks, sedangkan 10 merupakan angka. Perbedaan tipe data dapat membuat hasil operasi tidak sesuai dugaan.
Gunakan panduan sintaks dan tipe data MDN sebagai rujukan. Untuk latihan, buat data nama produk, harga, dan jumlah barang, lalu tampilkan hasil perkaliannya melalui Console.
3. Latih Percabangan, Perulangan, dan Fungsi
Percabangan memungkinkan program memilih tindakan berdasarkan kondisi. Misalnya, pesan yang ditampilkan berbeda ketika stok masih tersedia dan ketika stok habis. Struktur if dan else dapat digunakan untuk kebutuhan seperti ini.
Perulangan membantu menjalankan proses berulang, misalnya membaca setiap barang dalam daftar belanja. Mulailah dari daftar pendek agar Anda bisa memperkirakan hasilnya sebelum kode dijalankan.
Fungsi mengelompokkan instruksi untuk suatu tugas. Sebagai contoh, fungsi penghitung total dapat menerima harga dan jumlah sebagai masukan, lalu mengembalikan hasilnya. Parameter adalah nama masukan pada definisi fungsi, sedangkan return digunakan untuk mengembalikan nilai.
Pelajari alur kontrol dan fungsi JavaScript secara bertahap. Anda tidak harus menghafal seluruh bentuk penulisannya sebelum mencoba.
Latihan yang bisa dilakukan adalah membuat fungsi penghitung total belanja, menambahkan kondisi potongan harga, lalu mencoba beberapa masukan. Pastikan contoh dengan jumlah nol atau harga berbeda tetap menghasilkan perhitungan yang Anda harapkan.
4. Pelajari DOM dan Event melalui Penghitung Klik
DOM, singkatan dari Document Object Model, merupakan representasi dokumen yang dapat diakses melalui antarmuka pemrograman. Di browser, JavaScript dapat menggunakan DOM untuk memilih elemen halaman dan memperbarui isinya.
Event adalah kejadian yang dapat direspons program, seperti klik atau perubahan isian. Melalui event listener, Anda menentukan fungsi yang dijalankan ketika kejadian tertentu berlangsung.
Pada infografik tersebut, angka awal adalah 0. Setelah satu klik, nilainya menjadi 1. Contoh berikut menerapkan alur yang sama dengan tampilan sederhana tanpa tambahan CSS.
Buat file bernama latihan.html di folder latihan. Salin contoh kode yang ditampilkan berikut ke dalam file tersebut, simpan sebagai teks biasa, lalu buka melalui browser. Pastikan nama file tidak berubah menjadi latihan.html.txt.
<!doctype html>
<html lang="id">
<head>
<title>Latihan JavaScript</title>
</head>
<body>
<button id="tambah" type="button">Tambah</button>
<p>Jumlah klik: <span id="hasil">0</span></p>
<script>
let jumlahKlik = 0;
const button = document.querySelector("#tambah");
const hasil = document.querySelector("#hasil");
button.addEventListener("click", () => {
jumlahKlik += 1;
hasil.textContent = jumlahKlik;
});
</script>
</body>
</html>
Variabel jumlahKlik menyimpan angka awal. document.querySelector memilih elemen berdasarkan selektor yang diberikan. Selektor #tambah menunjuk tombol dengan id tambah, sedangkan #hasil menunjuk tempat menampilkan angka.
Metode addEventListener memasang fungsi penanganan klik. Penulisan () => { ... } merupakan arrow function yang dijalankan setiap kali kejadian tersebut diterima. Di dalamnya, jumlahKlik += 1 menambah nilai sebanyak satu.
Baris hasil.textContent = jumlahKlik memperbarui teks pada elemen hasil. Anda dapat membaca penjelasannya dalam dokumentasi addEventListener dan textContent.
Script ditempatkan setelah tombol dan elemen hasil agar keduanya sudah tersedia ketika kode dijalankan. Coba tekan tombol tiga kali. Angka seharusnya berubah dari 0 menjadi 1, 2, lalu 3. Ketika halaman dimuat ulang, angka kembali ke 0 karena contoh ini belum menyimpan data secara permanen.
5. Biasakan Membaca Error dan Memeriksa Kode
Ketika latihan tidak berjalan, buka Console dan baca pesan kesalahannya. Perhatikan nama file serta nomor baris yang ditunjukkan. Mulailah dari masalah pertama karena satu kesalahan dapat memengaruhi proses berikutnya.
SyntaxError dapat muncul ketika penulisan kode tidak sesuai aturan, misalnya kurung atau tanda kutip belum ditutup. ReferenceError dapat muncul ketika program menggunakan nama variabel yang tidak tersedia. JavaScript juga membedakan huruf besar dan kecil, sehingga jumlahKlik dan jumlahklik merupakan nama berbeda.
Jika pemilihan elemen tidak menemukan hasil, querySelector mengembalikan null. Pemanggilan metode pada nilai tersebut dapat menimbulkan TypeError. Periksa kesesuaian id, selektor, serta posisi script sebelum mengubah bagian kode lain.
Untuk latihan, ubah satu bagian kode secara sengaja, amati pesan yang muncul, lalu perbaiki. Catat penyebabnya dengan kalimat sendiri. Cara ini membantu Anda mengenali pola kesalahan ketika mengerjakan proyek berikutnya.
6. Bangun Proyek Kecil dan Tambahkan Fitur Bertahap
Setelah penghitung klik berjalan, tambahkan tombol Reset untuk mengembalikan nilai ke nol. Berikutnya, coba tombol Kurangi dengan kondisi agar angka tidak menjadi negatif. Kerjakan satu perubahan sampai benar-benar dipahami sebelum menambahkan fitur lain.
Proyek berikutnya bisa berupa kalkulator total belanja, daftar tugas, atau kuis sederhana. Pilih proyek dengan tujuan yang jelas dan jumlah fitur terbatas agar Anda dapat menyelesaikan sekaligus menjelaskan cara kerjanya.
Buat pola belajar yang realistis. Misalnya, gunakan satu sesi untuk membaca konsep, satu sesi untuk mencoba contoh, dan satu sesi untuk membuat variasi tanpa menyalin seluruh kode. Durasi belajar dapat disesuaikan dengan waktu yang tersedia.
Setelah dasar bahasa, DOM, dan event mulai dipahami, lanjutkan ke pemrograman asinkron, Promise, serta pengambilan data melalui API. Framework dapat dipelajari ketika Anda sudah memahami kebutuhan yang ingin diselesaikan.
Jadikan dokumentasi sebagai tempat mencari jawaban saat dibutuhkan. Ukuran kemajuan yang lebih berguna adalah kemampuan menjelaskan alur program, memperbaiki kesalahan sederhana, dan mengembangkan fitur kecil secara mandiri.
Pertanyaan Umum tentang Belajar JavaScript
Apakah JavaScript harus dipelajari setelah HTML dan CSS? Untuk dasar bahasanya, tidak harus. Namun, HTML dasar membantu Anda memahami latihan yang melibatkan elemen halaman. CSS dapat dipelajari sambil memperbaiki tampilan proyek.
Apakah perlu memasang Node.js sejak awal? Tidak untuk contoh penghitung klik dalam artikel ini. Browser sudah menyediakan lingkungan untuk menjalankannya. Node.js dapat dipelajari ketika Anda membutuhkan JavaScript di luar browser atau alat pengembangan yang memakainya.
Berapa lama sampai memahami JavaScript? Waktunya berbeda menurut pengalaman, konsistensi latihan, dan cakupan kemampuan yang dituju. Gunakan target bertahap, seperti memahami variabel, membuat fungsi, lalu menangani interaksi halaman.
Mulailah dari contoh yang dapat Anda jalankan hari ini. Pahami setiap baris, ubah perilakunya, dan periksa hasilnya. Dari latihan kecil yang konsisten, konsep JavaScript akan lebih mudah dihubungkan dengan kebutuhan website yang nyata.