⊗jsSpExcThr 145 of 294 menu

Melemparkan Pengecualian di JavaScript

Dalam pelajaran sebelumnya, kita telah mempelajari dua tempat di mana JavaScript melemparkan pengecualian jika terjadi masalah.

Namun, dalam proyek Anda, mungkin ada situasi lain yang bagi Anda merupakan pengecualian, tetapi bagi JavaScript bukan. Dalam hal ini, kita dapat membuat dan melemparkan pengecualian kita sendiri (custom exceptions).

Mari kita bahas sintaks yang diperlukan untuk melakukannya. Pertama, pengecualian perlu dibuat dengan perintah new Error, dengan meneruskan teks pengecualian sebagai parameternya:

new Error('teks pengecualian');

Kemudian pengecualian ini perlu dilemparkan dengan perintah throw:

throw new Error('teks pengecualian');

Melemparkan pengecualian memaksa JavaScript menganggap bahwa situasi yang luar biasa telah terjadi. Ini berarti pengecualian seperti itu dapat ditangkap dengan konstruksi try-catch dan diolah dengan cara yang diinginkan.

Mari kita lihat contoh bagaimana menggunakan ini. Misalkan kita memiliki fungsi yang membagi satu angka dengan angka lainnya:

function div(a, b) { return a / b; }

Mari kita anggap bahwa pembagian dengan nol dilarang dan upaya untuk melakukannya harus menyebabkan situasi pengecualian. Untuk itu, kita akan memeriksa dalam fungsi, apakah ada upaya membagi dengan 0. Jika tidak - kita akan membagi, dan jika ya - kita akan melemparkan pengecualian:

function div(a, b) { if (b !== 0) { return a / b; } else { throw new Error('kesalahan pembagian dengan nol'); } }

Pertama-tama, mari kita coba membagi dengan 0, tanpa menangkap pengecualian:

alert( div(3, 0) );

Dalam hal ini, eksekusi skrip akan terputus dan di konsol akan muncul error dengan teks 'kesalahan pembagian dengan nol' (cobalah). Sekarang mari kita tangkap error kita dan olah dengan cara tertentu:

try { alert( div(3, 0) ); } catch (error) { alert('Anda mencoba membagi dengan 0, yang dilarang'); }

Dalam JavaScript, upaya mengambil akar kuadrat dari angka negatif tidak menyebabkan pelemparan pengecualian:

let result = Math.sqrt(-1); console.log(result); // akan menampilkan NaN

Tulis fungsi Anda sendiri yang akan mengambil akar kuadrat dari sebuah angka dan pada saat yang sama melemparkan pengecualian, jika akar diambil dari angka negatif.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak