Ralat JavaScript
Ralat JavaScript - baling, cuba dan tangkap
pernyataan cuba menguji blok kod untuk ralat.
ralat pemprosesan kenyataan tangkapan. Pernyataan lontaran
mencipta ralat tersuai.
Ralat JavaScript
Apabila enjin JavaScript melaksanakan kod JavaScript, pelbagai perkara akan berlaku kesilapan.
Mungkin ralat sintaks, biasanya ralat pengekodan atau kesilapan menaip 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 membuang ralat
apabila Apabila ralat berlaku, apabila berlaku masalah, enjin JavaScript biasanya berhenti dan menjana mesej ralat.
Istilah teknikal untuk menerangkan situasi ini ialah: JavaScript akan membuang ralat.
JavaScript cuba dan tangkap
cuba Pernyataan membolehkan kami mentakrifkan blok kod yang diuji untuk ralat apabila dilaksanakan.
tangkap Pernyataan membolehkan kami mentakrifkan blok kod yang akan dilaksanakan apabila ralat berlaku dalam blok kod cuba.
Pernyataan JavaScript cuba dan tangkap muncul secara berpasangan.
Sintaks
cuba {
//Jalankan kod di sini
} tangkap(err) {
//Kendalikan ralat di sini
}
Instance
Dalam contoh di bawah, kami sengaja Terdapat kesilapan kesilapan yang ditulis dalam kod blok cuba. Makluman itu sengaja ditulis sebagai addlert
Blok tangkapan akan menangkap ralat dalam blok cuba dan melaksanakan kod untuk mengendalikannya.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script> var txt=""; function message(){ try { adddlert("Welcome guest!"); } catch(err) { txt="本页有一个错误。\n\n"; txt+="错误描述:" + err.message + "\n\n"; txt+="点击确定继续。\n\n"; alert(txt); } } </script> </head> <body> <input type="button" value="查看消息" onclick="message()" /> </body> </html>
Jalankan program untuk mencubanya
Kenyataan Lempar
Pernyataan lontaran membolehkan kami mencipta kesilapan 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.
Sintaks
throw exception
Pengecualian boleh berupa rentetan JavaScript, nombor, nilai logik atau objek.
Contoh
Contoh ini mengesan nilai pembolehubah input. Jika nilainya salah, pengecualian (ralat) dilemparkan. catch akan menangkap ralat ini dan memaparkan mesej ralat tersuai:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(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> <h1>我的第一个 JavaScript</h1> <p>请输出一个 5 到 10 之间的数字:</p> <input id="demo" type="text"> <button type="button" onclick="myFunction()">测试输入</button> <p id="mess"></p> </body> </html>
Jalankan atur cara dan cuba
Nota, jika terdapat ralat dalam getElementById fungsi, di atas Contoh juga akan membuang ralat.