Cara Handling Error di Bahasa Pemrograman Javascript

 Cara Handling Error di Bahasa Pemrograman Javascript

    Dalam proses development atau pembuatan aplikasi. Kita pasti tidak asing dengan error, error sudah seperti makanan sehari-hari bagi para developer atau pengembang perangkat lunak. Sebab kita pasti masih memerlukan riset dan percobaan berulang-ulang hingga menemukan best practice code yang tepat untuk aplikasi yang sedang kita kembangkan.

Error sendiri merupakan sebuah kata ganti atau istilah yang menunjukan pesan kesalahan. Error dapat terjadi pada program, sistem, serta code yang sedang kita kembangkan maupun program yang sudah berjalan di environment production sekalipun. Maka dari itu kita perlu mengelola permasalah yang mungkin dapat muncul sehingga kita dapat meminimalisir kesalah yang mungkin terjadi kedepannya dengan sebuah proses yang disebut Error Handling.

    Pada article sebelumnya kita sudah mempelajari bagaimana function pada javascript itu bekerja, cara mendeklarasikan function itu seperti apa, serta jenis-jenis function yang dapat digunakan sesuai kebutuhan pada program yang sedang kita kembangkan. Kali ini kita akan membedah dan mempelajari bersama cara menangani kondisi error yang terjadi pada bahasa pemrograman javascript agar program yang kita buat dapat berjalan dengan lancar saat digunakan oleh pengguna. jadii, eror handling itu apa sih ?


Pengertian Error Handling

Dalam membuat kode program tentu kita pasti akan bertemu dengan error, ketika error terjadi kita perlu mengatasinya dengan sebuah proses yang disebut penanganan error. Penanganan error merupakan sebuah proses yang dilakukan untuk menganalisa kesalahan atau pesan error yang ditampilkan, dan mencari solusi agar masalah yang muncul tidak lagi terjadi dan program yang kita kembangkan dapat berjalan dengan baik. Error atau kesalahan bisa terjadi karena banyak faktor seperti memberikan input yang tidak valid, karena ada gangguan dari pihak luar, ataupun ada masalah dari sistem yang kita gunakan.

Pada bahasa pemrograman javascript. memiliki cara-cara tersendiri untuk menangani, dan mencegah error yang mungkin terjadi dari struktur bahasa, serta hal tambahan lain yang dapat digunakan untuk mengatur eksekusi jika terjadi error. Adapun error di bahasa pemrograman javascript dapat dikategorikan sebagai berikut :

1. Type Error

Type Error merupakan error yang terjadi ketika function yang dijalankan menerima masukan nilai yang seharusnya sehingga jalannya operasi pada function tersebut menjadi terhenti.

let orang;
console.log(orang.nama)

output: // TypeError: Cannot read property 'nama' of undefined

untuk menghindari hal tersebut terjadi kita perlu memvalidasi masukan apa saja yang dapat diterima function yang kita buat. Yang paling mudah yaitu menggunakan opsional chainning "?" atau nullable yang akan otomatis handling ketika kita tidak yakin apakah properti tersebut bernilai null, undifined atau tidak.

let orang;
console.log(orang?.nama)

output: // undefined

2. Syntax Error

Ketika kita sudah memilih menggunakan suatu teknologi. Kita harus mengikuti aturan-aturan dasar maupun best practice pada bahasa pemrograman tersebut. Jika tidak, maka kita akan menjumpai error yang diberi nama Syntax Error yang berarti kita menulis baris code tidak sesuai aturan yang berlaku pada bahasa pemrograman tersebut.

const nama;
console.log(nama);

output: // Uncaught SyntaxError: Missing initializer in const declaration

const kerja () => {
    console.log("A");


output: // Uncaught SyntaxError: Unexpected end of input

untuk menghindari syntax error, kita perlu mempelajari dokumentasi yang disediakan oleh bahasa pemrograman tersebut sampai memahami betul. Setidaknya kita paham fundamental bahasa pemrograman tersebut sebelum memulai mengerjakan suatu project.


3. Range Error

Selanjutnya ada error bernama Range Error. Range error merupakan sebuah error yang akan muncul ketika nilai yang dimasukkan melebihi batasan ataupun kurang dari nilai yang telah ditetapkan baik itu ditetapkan oleh kita sebagai developer maupun batasan secara default pada bahasa pemrograman yang kita gunakan.

let item = new Array(-99);
console.log(item);

output: // Uncaught RangeError: Invalid array length


const loopBack = () => {
return loopBack();
}

loopBack()

output: // Uncaught RangeError: Maximum call stack size exceeded


Pada dua contoh kita mendapatkan Range Error yang disebabkan oleh :

- Kesalahan dalam memberikan nilai index array. Karena sebuah array tidak dapat memiliki nilai panjang yang negatif.

- Jika sebuah function dibuat berisi argument yang dapat memanggil dirinya sendiri, kita perlu menentukan batas maksimal perulangan yang boleh dilakukan. Jika tidak, maka akan menyebabkan tumpukkan panggilan hingga melebihi batas maksimal yang dapat dikerjakan


4. Refference Error

Kita akan menerima pesan Referrence Error di javascript ketika kita coba untuk memanggil suatu variable yang pada kenyataannya variable tersebut belum pernah diinisialisasi ataupun saat terjadi typo saat memanggil variable tersebut. Cara menanganinya kita hanya perlu menulis kode program lebih teliti ataupun kita bisa memasang ekstensi pada program IDE yang kita gunakan untuk memberikan suggesti terkait apapun pada bahasa pemrograman tersebut.


Tujuan Penanganan Error

Berikut adalah beberapa tujuan dari pengaplikasian penanganan error dalam melakukan pengembangan kode program :

  • Meningkatkan Kenyamanan Pengguna,  dengan mengaplikasikan penanganan error, program dapat terus berjalan tanpa harus menghentikan program karena ada kegagalan function pada kode program.
  • Lifecycle Program Tetap Terjaga, dengan mengaplikasikan penanganan error, aplikasi dapat tetap stabil dan tidak terhenti.
  • Meberikan informasi pada pengguna, dengan mengaplikasikan penanganan error, pengguna dapat melihat informasi terkait error yang terjadi dan bisa segera melapor ke developer untuk diperbaiki.


Best Practice Error Handling

  • Kita perlu melakukan pencatatan Logging dengan detail dengan bantuan dari sistem yang kita gunakan.
  • Menggunakan program Monitoring untuk memberikan kita laporan kesalahan yang terjadi pada program yang berjalan.
  • Memberikan Validasi pada setiap inputan untuk memastikan data yang dikirimkan sesuai dengan yang dibutuhkan.
  • Menampilkan pesan error informatif yang mudah dibaca oleh pengguna tanpa menampilkan detail teknis yang membingungkan.
  • Membuat Unit test dan Integrated testing  untuk menguji aplikasi agar kesalahan atau error yang mungkin terjadi dapat ditangani dengan benar dalam.

Apakah sudah paham mengenai pengertian handling error di javascript?. Selanjutnya kita akan mempelajari secara teknis bagaimana penanganan error di bahasa pemrograman javascript.
Pada bahasa pemrograman javascript kita bisa menggunakan sintaks try and catch untuk menangani kesalahan yang mungkin terjadi selama eksekusi kode function berlangsung. mulanya kode dieksekusi seperti biasa di dalam kode blok try, jika selama berlangsungnya eksekusi program ada error yang muncul maka akan langsung dilemparkan ke blok catch. Di dalam blok catch kita bisa menampung banyak hal terkait error yang dapat kita analisa dan mencari cara untuk memperbaiki error yang terjadi sehingga tidak terdapat error lagi kedepannya.


contoh struktur dasar try and catch :

try {
// blok kode yang mungkin dapat menyebabkan error
} catch (error){
blok kode untuk menangani error yang muncul
}
contoh :

try {
const a = 15

const match = 5+5 === a
console.log(match)

}catch(err){
console.error(err)
}

Meskipun metode trycatch sudah cukup mumpuni untuk membantu kita menangani error. Kita bisa menambahkan satu blok baru pada metode trycatch yaitu blok finnaly. Blok finnaly merupakan sebuah blok yang pasti akan dieksekusi ketika function memiliki error maupun tidak memiliki error. Blok ini dapat membantu kita untuk melakukan manajemen resource dengan membersihkan koneksi yang telah terbuka ataupun melanjutkan ke proses selanjutnya.

Selain menggunakan metode functional untuk menangani error yang muncul. Kita juga bisa memandu orang yang sedang menggunakan program kita dengan menampilkan pesan perintah untuk melakukan input yang sesuai dengan yang diharapkan. Sehingga inputan menjadi valid dan alur akan berlanjut ke proses yang selanjutnya.

Begitulah cara yang dapat kita gunakan untuk menangani error yang mungkin terjadi pada program yang sedang kita kembangkan. Dengan mengetahui cara penanganan error yang benar kita dapat memperbaiki kesalahan dengan lebih baik dan efisien serta dapat memudahkan interaksi pengguna ketika menemukan error pada saat menggunakan aplikasi yang kita kembangkan. terimakasih telah mampir di postingan ini dan semoga menjadi ilmu yang bermanfaat.


Teruslah Bergerak Maju.

Previous Post Next Post

Contact Form