Contoh
Dalam contoh ini, kami telah membuat kesalahan ketik dalam kode (di blok try).
Contoh yang seharusnya mengingatkan "Welcome guest!" , Namun peringatan adalah salah eja.
Blok catch menangkap kesalahan, dan mengeksekusi kode untuk menanganinya:
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
try {
adddlert("Welcome guest!");
}
catch(err) {
document.getElementById("demo").innerHTML = err.message;
}
</script>
</body>
</html>
Cobalah sendiri " Lebih "Try it Yourself" contoh di bawah ini.
Definisi dan Penggunaan
Mencoba / menangkap / akhirnya pernyataan menangani beberapa atau semua kesalahan yang mungkin terjadi dalam blok kode, sementara masih menjalankan kode.
Kesalahan dapat coding kesalahan yang dibuat oleh programmer, kesalahan karena masukan yang salah, dan hal-hal tak terduga lainnya.
Pernyataan try memungkinkan Anda untuk menentukan blok kode yang akan diuji untuk kesalahan ketika sedang dijalankan.
Pernyataan menangkap memungkinkan Anda untuk menentukan blok kode yang akan dieksekusi, jika terjadi kesalahan dalam blok try.
Akhirnya Pernyataan memungkinkan Anda mengeksekusi kode, setelah mencoba dan menangkap, terlepas dari hasilnya.
Catatan: Hasil tangkapan dan akhirnya pernyataan keduanya opsional, tetapi Anda perlu menggunakan salah satu dari mereka (if not both) saat menggunakan pernyataan try.
Tip: Ketika terjadi kesalahan, JavaScript biasanya akan berhenti, dan menghasilkan pesan kesalahan. Gunakan lemparan pernyataan untuk membuat kesalahan kustom (throw an exception) . Jika Anda menggunakan melempar bersama-sama dengan mencoba dan menangkap, Anda dapat mengontrol aliran program dan menghasilkan pesan kesalahan kustom.
Untuk informasi lebih lanjut tentang kesalahan JavaScript, membacakan JavaScript Kesalahan Tutorial.
Dukungan Browser
Pernyataan | |||||
---|---|---|---|---|---|
try/catch/finally | iya nih | iya nih | iya nih | iya nih | iya nih |
Sintaksis
try {
tryCode - Block of code to try
}
catch( err ) {
catchCode -
Block of code to handle errors
}
finally {
finallyCode - Block of
code to be executed regardless of the try / catch result
}
Nilai parameter
Parameter | Deskripsi |
---|---|
tryCode | Wajib. Blok kode yang akan diuji untuk kesalahan ketika sedang dieksekusi |
err | Diperlukan jika digunakan dengan menangkap. Menentukan variabel lokal yang mengacu pada kesalahan. Variabel dapat merujuk ke objek Kesalahan (berisi informasi tentang kesalahan, seperti pesan " 'addlert' tidak didefinisikan"). Jika pengecualian diciptakan oleh pernyataan throw, variabel mengacu pada objek tertentu dalam melempar pernyataan (lihat "Lebih Contoh") |
catchCode | Pilihan. Blok kode yang akan dieksekusi, jika terjadi kesalahan dalam blok try. Jika tidak terjadi kesalahan, blok kode ini tidak pernah dieksekusi |
finallyCode | Pilihan. Blok kode yang akan dieksekusi terlepas dari try / hasil tangkapan |
Rincian teknis
Versi JavaScript: | 1.4 |
---|
Contoh lebih
Contoh
Contoh ini meneliti masukan. Jika nilai salah, pengecualian (err) dilemparkan.
Pengecualian (err) ditangkap oleh pernyataan menangkap dan pesan kesalahan kustom ditampilkan:
<!DOCTYPE html>
<html>
<body>
<p>Please input a number between
5 and 10:</p>
<input id="demo" type="text">
<button type="button"
onclick="myFunction()">Test Input</button>
<p id="message"></p>
<script>
function myFunction() {
var message, x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "is Empty";
if(isNaN(x)) throw "not a number";
if(x > 10) throw "too high";
if(x < 5) throw "too low";
}
catch(err) {
message.innerHTML =
"Input " + err;
}
}
</script>
</body>
</html>
Cobalah sendiri " Contoh
Akhirnya Pernyataan memungkinkan Anda mengeksekusi kode, setelah mencoba dan menangkap, terlepas dari hasilnya:
function myFunction()
var message,
x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "Empty";
if(isNaN(x))
throw "Not a number";
if(x >
10) throw "Too high";
if(x <
5) throw "Too low";
}
catch(err)
{
message.innerHTML = "Error: " +
err + ".";
}
finally {
document.getElementById("demo").value
= "";
}
}
Cobalah sendiri " Pages terkait
JavaScript Tutorial: Kesalahan JavaScript
Referensi JavaScript: JavaScript lemparan Pernyataan
<JavaScript Laporan Referensi