try/catch/finally, throw, galat khusus
Gunakan try/catch/finally, lempar galat sederhana dengan throw, dan definisikan Error khusus kecil untuk pesan yang lebih jelas
try/catch/finally, throw, galat khusus adalah pelajaran JavaScript Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 2. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar JavaScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus JavaScript Academy mencakup 2 pelajaran total.
Pengantar penanganan kesalahan
Tujuan: Tangani kesalahan dengan aman dan jaga program tetap stabil.
- Dasar-dasar try/catch
- throw dengan pesan yang jelas
- finally untuk pembersihan
- Error khusus sederhana

Dasar-dasar try/catch
Bungkus operasi yang berisiko dengan try. Di dalam catch, tampilkan pesan singkat yang membantu.
// try/catch around risky code
try {
const data = JSON.parse("{\"name\":\"Ayla\"}");
console.log("Parsed:", data.name);
} catch (e) {
// e.message is short and useful on mobile
console.log("Failed to parse:", e.message);
}

Dasar-dasar throw
Gunakan throw new Error("message") untuk menghentikan proses dan menjelaskan apa yang salah.
// Throw when inputs are invalid
function doubleNumber(n) {
if (typeof n !== "number") {
throw new Error("Number required");
}
return n * 2;
}
try {
console.log(doubleNumber(4));
console.log(doubleNumber("4")); // will throw
} catch (e) {
console.log("Error:", e.message);
}

finally untuk pembersihan
finally berjalan baik saat try berhasil maupun gagal — berguna untuk menutup sumber daya.
// finally runs after try/catch — great for cleanup
let opened = false;
try {
opened = true;
console.log("Opened:", opened);
// Force an error to see finally still run
JSON.parse("{ bad }");
} catch (e) {
console.log("Caught:", e.message);
} finally {
opened = false;
console.log("Closed:", opened);
}

Error khusus (singkat)
Buat InputError sederhana untuk masalah input. Gunakan instanceof untuk menanganinya secara khusus.
// Make a small custom error
class InputError extends Error {
constructor(message) {
super(message);
this.name = "InputError";
}
}
function positive(n) {
if (typeof n !== "number") {
throw new InputError("Number required");
}
if (n <= 0) {
throw new InputError("Must be positive");
}
return n;
}
try {
console.log("OK:", positive(3));
console.log("Fail:", positive(0));
} catch (e) {
if (e instanceof InputError) {
console.log("Input problem:", e.message);
} else {
// Unknown error: rethrow or log differently
console.log("Unexpected:", e.message);
}
}

Kiat dan daftar periksa
Kiat:
- Validasi input sejak awal; gunakan pesan yang singkat saat melempar kesalahan.
- Gunakan finally untuk pembersihan, seperti menutup tanda dan pengatur waktu.
- Jangan mengabaikan kesalahan: catat secara singkat atau lempar kembali.

Kuis finally
Pemeriksaan cepat: Perilaku finally.

Ringkasan
Ringkasan: Bungkus kode yang berisiko dengan try/catch, lempar kesalahan yang singkat dan membantu, gunakan finally untuk pembersihan, serta definisikan kesalahan khusus sederhana agar penanganannya lebih jelas.

Pertanyaan yang Sering Diajukan
Apakah pelajaran “try/catch/finally, throw, galat khusus” gratis?
Ya — teks lengkap “try/catch/finally, throw, galat khusus” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus JavaScript Academy, upgrade ke CoddyKit PRO. Kursus JavaScript Academy mencakup 2 pelajaran total.
Apa yang akan aku pelajari di “try/catch/finally, throw, galat khusus”?
Gunakan try/catch/finally, lempar galat sederhana dengan throw, dan definisikan Error khusus kecil untuk pesan yang lebih jelas Kamu berlatih JavaScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai JavaScript Academy?
Tidak diperlukan pengalaman sebelumnya. JavaScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 2.
Berapa lama pelajaran “try/catch/finally, throw, galat khusus” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran JavaScript Academy ini?
Ya. Setiap pelajaran JavaScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- try/catch/finally, throw, galat khusus
- Pemrograman Defensif dan Pemeriksaan Masukan