tutorial pengembangan web terbaru
 

JavaScript mencoba / menangkap / akhirnya Pernyataan

<JavaScript Laporan Referensi

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

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