Ralat JavaScript - baling, cuba dan tangkap
Pernyataan percubaan menguji blok kod untuk ralat.
kenyataan tangkapan mengendalikan ralat. Pernyataan
lontaran mencipta ralat tersuai.
Ralat JavaScript
Pelbagai ralat boleh berlaku apabila enjin JavaScript melaksanakan kod JavaScript.
Mungkin ralat sintaks, biasanya ralat pengekodan atau kesilapan taip yang dibuat oleh pengaturcara.
boleh menjadi ralat ejaan atau ciri yang tiada dalam bahasa (mungkin disebabkan oleh perbezaan penyemak imbas).
Ralat mungkin disebabkan oleh output yang salah daripada pelayan atau pengguna.
Sudah tentu, ia juga mungkin disebabkan oleh banyak faktor lain yang tidak dapat diramalkan.
JavaScript melemparkan ralat
Apabila ralat berlaku, apabila berlaku kesilapan, enjin JavaScript biasanya berhenti dan menghasilkan mesej ralat.
Istilah teknikal untuk menerangkan situasi ini ialah: JavaScript akan membuang ralat. Pernyataan
JavaScript try and catch
try membolehkan kami mentakrifkan blok kod yang diuji untuk ralat apabila dilaksanakan. Pernyataan
catch membolehkan kami mentakrifkan blok kod yang akan dilaksanakan apabila ralat berlaku dalam blok kod cuba.
Pernyataan JavaScript try and catch muncul secara berpasangan.
Sintaks
cuba {
//Jalankan kod di sini
} tangkap(err) {
//Kendalikan ralat di sini
}
Contoh:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script type="text/javascript"> function message() { try { adlert("Hello World!"); } catch(err) { alert("错啦!"); } } </script> </head> <body> <input type = "button" value = "点击" onclick = "message()"> </body> </html>
Balingan pernyataan
kenyataan lontaran membolehkan kami membuat ralat tersuai.
Istilah teknikal yang betul ialah: mencipta atau melontar pengecualian.
Jika anda menggunakan throw dengan try and catch, anda boleh mengawal aliran program dan menjana mesej ralat tersuai.
Syntax
throw exception
Exception boleh menjadi rentetan JavaScript, nombor, nilai logik atau objek.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <script> function myFunction(){ try{ var x=document.getElementById("demo").value; if(x=="") throw "值为空"; if(isNaN(x)) throw "不是数字"; if(x>10) throw "太大"; if(x<5) throw "太小"; } catch(err){ var y=document.getElementById("mess"); y.innerHTML="错误:" + err + "。"; } } </script> </head> <body> <p>请输出一个 50 到 100 之间的数字:</p> <input id="demo" type="text"> <button type="button" onclick="myFunction()">请输入</button> <p id="mess"></p> </body> </html>