JavaScript Try...Catch Lausung
Try...catch lausung võimaldab testida koodi blokki rikete puhul.
Näited:
Try...catch lausung
Selles näites demonstreeritakse kuidas kirjutada "try..catch" lausungit.
Try...catch lausung-2
Siin on veel üks "try..catch" lausung.
JavaScript - Catching Errors
Intrneti veebilehtedes liikudes võib aegajalt näha teate-akent: "There is a runtime error! Do you wish to debug?". Veebilehe külastajale pole see teade vajalik, küll aga veebiarendajale. Nähes sellist teate-akent, külastaja tavaliselt lahkub sellelt lehelt.
Vaatame kuidas toimida selliste rikketeadete ilmumisel. Try...catch lausung lubab kontrollida vigade olemasolu koodi-blokis. "try" blokk sisaldab koodi mis peab käivituma ja "catch" blokis on kood mis käivitub kui rike tuvastatakse.
Süntaks:
try { //Siia kirjuta mingi kood } catch(err) { //Siin tegeletakse vigadega }
Pane tähele: "try" ja "catch" tuleb kirjutada väikeste tähtedega.
Näide 1:
Selles näites peaks nupule klikkides käivituma skript, mille tulemusena ilmub teate-aken tekstiga "Tere külaline!".
Sõna "alert()" on kirjutatud valesti, seega ilmub teate-aken informatsiooniga JavaScript'i rikke kohta:
<html> <head> <script type="text/javascript"> function message() { adddlert("Tere külaline!"); } </script> </head> <body> <input type="button" value="Vaata teadet" onclick="message()" /> </body> </html>
Näide 2:
Selles näites "try...catch" lausung võimaldab kasutjal näha, millise rikkega on tegemist:
<html> <head> <script type="text/javascript"> var txt="" function message() { try { adddlert("Tere külaline!"); } catch(err) { txt="There was an error on this page.\n\n"; txt+="Error description: " + err.description + "\n\n"; txt+="Click OK to continue.\n\n"; alert(txt); } } </script> </head> <body> <input type="button" value="Vaata teadet" onclick="message()" /> </body> </html>
Näide 3:
Selles näites kasutatakse "confirm box'i". See annab kasutajale võimaluse valida, kas vajutada "OK" v. "Cancel". Esimesel juhul jätkatakse lehekülje vaatamist. Teisel juhul suunatakse kasutaja ümber.
<html> <head> <script type="text/javascript"> var txt="" function message() { try { adddlert("Tere külaline!"); } catch(err) { txt="There was an error on this page.\n\n"; txt+="Click OK to continue viewing this page,\n"; txt+="or Cancel to return to the home page.\n\n"; if(!confirm(txt)) { document.location.href="http: //pyramdesign.angelfire.com/pyramdesign.html/"; } } } </script> </head> <body> <input type="button" value="Vaata teadet" onclick="message()" /> </body> </html>
JavaScript Throw Lausung
"throw" lausung võimaldab luua erandeid. Kasutades seda lausungit koos "try...catch" lausungiga saab hoida programmi kontrolli all ning luua täpsema vea-teate.
Süntaks:
throw(exception)
Pane tähele: "throw" kirjutatakse väikeste tähtedega.
Näide:
Selles näites nimetatakse muutja väärtust x. Kui x väärtus on suurem kui 10 ja väiksem kui 0 siis "throw" lausung käivitab vea-teate:
<html> <body> <script type="text/javascript"> var x=prompt("Sisesta number 0 kuni 10:",""); try { if(x>10) throw "Err1"; else if(x<0) throw "Err2"; } catch(er) { if(er=="Err1") alert("Viga! Number on liiga suur"); if(er == "Err2") alert("Viga! Number on liiga vaike"); } </script> </body> </html>

