try paziņojums ļauj pārbaudīt koda bloku uz kļūdām.
catch deklarācija ļauj Jums rīkoties,ja ir kļūda, kļūdu menedžēšana.
throwpaziņojums ļauj jums izveidot savas kļūdas, piemēram pie formas validācijas.
Kļūdas būs! (īpaši sakot programmēt)
Ja JavaScript dzinējs izpilda JavaScript kodu, dažādas kļūdas var rasties:
Tas var būt sintakses kļūdas, parasti kodēšanas kļūdas vai pārrakstīšanās, ko veic programmētājs.
Tas var būt kļūdas kad trūkst kādas funkcijas valodā (varbūt dēļ pārlūkprogrammu atšķirībām).
Tas var būt kļūdas, kas saistītas ar nepareizu ievadi, no lietotāja, vai no interneta servera.
Un, protams, tas var būt daudzas citas neparedzamas lietas.
JavaScript izmet (throws) kļūdas
Ja rodas kļūda, tad, kad kaut kas noiet greizi, JavaScript dzinējs normāli apstāties, un radīs kļūdas ziņojumu.
Tehniskais termins tam ir: JavaScript būs izmestis(throw)kļūdu.
JavaScript try un catch
try paziņojums ļauj definēt koda bloku kurš tiks testēts uz kļūdām, kamēr tas tiek izpildīts.
catch deklarācija ļauj definēt koda bloku, kas jāizpilda, ja kļūda notiek try blokā.
Parasti JavaScript paziņojumi try un catch nāk pa pāriem (tiek izmantoti kopā).
Sintakse
try { //Run some code here } catch(err) { //Handle errors here }
Piemēri
Šajā piemērā zemāk mēs esam apzināti veikuši typo(ievades) kodu, kas tiks parbaudīts ar try paziņojumu (galvenā kļūda ir ka funkcija alert ir nepareizi uzrakstīta, ir uzrakstīts adddlert().
catch bloks atrod kļūdu try blokā, un izpilda kodu, kā rīkoties ar to, vairāk tas kļūs saprotams, nospiežot pogu "Pamēģini pats" un pēc šitā piemēra būs piemērs no manis kas būs, ja viss ir OK!!:
Piemērs
<!DOCTYPE html> <html> <head> <script> var txt=""; function message() { try { adddlert("Welcome guest!"); } catch(err) { txt="There was an error on this page.\n\n"; txt+="Error description: " + err.message + "\n\n"; txt+="Click OK to continue.\n\n"; alert(txt); } } </script> </head>
<body> <input type="button" value="View message" onclick="message()"> </body>
</html>
Pamēģini pats »
HTML Piemērs, un te ir arī realizēts, kas tika manā citā rakstā par funkcijām, kā definēt savu funkciju, turklāt ar mainīgo, kas tiks nodots funkcijai, ja to rakstu jūs esat lasījuši domāju te viss būs skaidrs, iesaku iekopēt to TryIt editorā:
<!DOCTYPE html> <html> <head> <script> function adddlert(var1){ alert(var1); } //esmu definējis pats savu funkciju ar nosaukumu adddlert, un pēc tām //tas darbība tiek parbaudīta sadaļā try var txt=""; function message() { try { adddlert("Esiet laipni gaidīti!"); } catch(err) { txt="There was an error on this page.\n\n"; txt+="Error description: " + err.message + "\n\n"; txt+="Click OK to continue.\n\n"; alert(txt); } } </script> </head>
<body> <input type="button" value="View message" onclick="message()" /> </body>
</html>
Pamēģini pats »
throw paziņojums
throw paziņojums, ļauj mums izveidot mums pašiem kaut kādu kļūdu.
Pareizais tehniskais termins ir izveidot vaiizmest (throw) izņēmumu (exception).
Ja jūs izmantojat throw paziņojumu kopā ar try un catch, jūs varat kontrolēt programmas plūsmu un radīt pielāgotus kļūdu ziņojumus.
Sintakse
Izņēmums (exception) var būt JavaScript String(virkne), Number(skaitlis), boolean vai objekts.
Piemērs
Šis piemērs pārbauda vērtību ievades mainīgajam (savā veida formas validācija). Ja vērtība ir nepareiza, error (kļūda), ir izmesta. Kļūda ir noķerta ar catch deklarāciju, un tiek parādīts viens no mūsu definētiem kļūdas ziņojumiem, ĻOTI SILTI IESAKU JUMS IZPĒTĪT ŠITO PIEMĒRU, JO IZSTUDĒJOT PIEMĒRU, PAŠI VARĒSIET RAKSTĪT SKRIPTUS FORMU VALIDĀCIJAI:
Piemērs
<script> function myFunction() { var y=document.getElementById("mess"); y.innerHTML=""; try { var x=document.getElementById("demo").value; 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) { y.innerHTML="Error: " + err + "."; } } </script>
<h1>My First JavaScript</h1> <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="mess"></p>
Pamēģini pats »
Ņemiet vērā, ka iepriekš minētais piemērs arī met kļūdu, ja getElementById funkcija neizdodas.
|