try...catch

Misol

Bu misolning try blokida imlo xatosi bor. Alert noto‘g‘ri yozilgan.

catch bloki xatoni ushlaydi va uni qayta ishlash uchun kodni bajaradi:

<p id="demo"></p> <script> try {   adddlert("Welcome guest!"); } catch(err) {   document.getElementById("demo").innerHTML = err.message; } </script>
O‘zingiz sinab ko‘ring »

Quyida ko‘proq misollar.


ULASHISH

Tavsif

Xato yuz berganda JavaScript to‘xtaydi va xato xabarini hosil qiladi.

Eslatma

Buning texnik atamasi: JavaScript istisno tashlaydi (throws an exception).

JavaScript ikkita xususiyatga ega Error obyektini yaratadi: name va message.

try...catch...finally ko‘rsatmalar birikmasi JavaScript’ni to‘xtatmasdan xatolarni qayta ishlaydi.

try operatori bajariladigan (sinab ko‘riladigan) kod blokini belgilaydi.

catch operatori har qanday xatoni qayta ishlash uchun kod blokini belgilaydi.

finally operatori natijadan qat’i nazar bajariladigan kod blokini belgilaydi.

throw operatori maxsus xatoni belgilaydi.

catch ham, finally ham ixtiyoriy, lekin ulardan bittasini ishlatishingiz shart.

Eslatma

throw operatorini try va catch bilan birga ishlatish dastur oqimini boshqarish va maxsus xato xabarlarini yaratish imkonini beradi.

Shuningdek qarang:

JavaScript throw

JavaScript Error obyekti

JavaScript xatolar darsligi


Sintaksis

try {   tryCode - Code block to run } catch(err) {   catchCode - Code block to handle errors } finally {   finallyCode - Code block to be executed regardless of the try result }

Parametrlar

Parametr Tavsif
tryCode Majburiy.
Bajarilish vaqtida tekshiriladigan kod bloki.
err Error obyektiga lokal havola.
catchCode Ixtiyoriy.
Xato yuz berganda bajariladigan kod bloki.
finallyCode Ixtiyoriy.
try natijasidan qat’i nazar bajariladigan kod bloki


Ko‘proq misollar

Bu misol kiritilgan ma’lumotni tekshiradi.

Agar qiymat noto‘g‘ri bo‘lsa, istisno (err) tashlanadi:

<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() {   const message = document.getElementById("message");   message.innerHTML = "";   let 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>
O‘zingiz sinab ko‘ring »

finally operatori try natijasidan qat’i nazar, undan keyin kodni bajaradi:

function myFunction()   const message = document.getElementById("message");   message.innerHTML = "";   let 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 = "";   } }
O‘zingiz sinab ko‘ring »

Brauzerlarda qo‘llab-quvvatlash

try...catch — ECMAScript3 (JavaScript 1999) imkoniyati.

U barcha brauzerlarda qo‘llab-quvvatlanadi:

Chrome Edge Firefox Safari Opera

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!