سبد (0)

مدیریت خطاها در JavaScript

دستور try، به شما اجازه می دهد تا، خطاهای یک بلاک از دستورات را تست کنید.

دستور catch، خطاهای اتفاق افتاده در قسمت try را بررسی می کند.

دستور throw، به شما اجازه می دهد تا خطاهای سفارشی ایجاد کنید.


دلیل اتفاقِ خطاها!

Wiki

زمانی که موتور JavaScript کدها را اجرا می کند، ممکن است خطاهای زیر اتفاق بیافتد:

  1. خطای املای دستورات (syntax error)، که معمولاً توسط برنامه نویس اتفاق می افتد.
  2. خطای گم شدگی خصوصیت (missing feature)، که ممکن است بخاطر تفاوت های بین مرورگرها و یا خطای املایی باشد.
  3. خطای ورودی اشتباه (wrong input)، که می تواند توسط یک کاربر باشد.

و البته این خطاها می تواند چیزهای غیرقابل پیشبینی دیگری نیز باشد.


پرتاب خطا (Throw Error)

Wiki

زمانی که خطایی اتفاق می افتد، به طور معمول، اجرای دستورات متوقف شده و یک پیغام خطا تولید می شود.

اصطلاح تکنیکی برای این عمل، عبارت throw است (به معنی پرتاب کردن، به اصطلاح یک پیغام خطا به سمت catch پرتاب می شود)


try و catch در JavaScript

Wiki

عبارت try، به شما اجازه می دهد تا، خطاهای یک بلاک از دستورات را تست کنید.

اگر خطایی در قسمت try اتفاق بیافتد، دستورات تعریف شده در قسمت catch اجرا می شوند. (catch به معنی گرفتن، به اصطلاح خطاهای پرتاب شده از قسمت try در قسمت catch گرفته می شوند)

try و catch ها همیشه جفت جفت می آیند.

نحوه استفاده

try
  {
  //Run some code here
  }
catch(err)
  {
  //Handle errors here
  }

مثال

در مثال زیر، در قسمت try، عمداً یک خطای املایی ایجاد کرده ایم.

قسمت catch خطایی که در try اتفاق افتاده را می گیرد و پیغام مناسب را چاپ می کند:

مثال (مدیریت خطاها در JavaScript)

<!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>
خودتان امتحان کنید »

دستور throw

Wiki

دستور throw، به شما اجازه می دهد تا خطاهای سفارشی ایجاد کنید.

اصطلاح تکنیکی صحیح برای ایجاد خطا: عبارت "throw an exception" است.

دستور throw باید همراه try و catch استفاده شود.

نحوه استفاده

throw exception

exception می تواند یک رشته، یک عدد، یک داده Boolean و یا یک Object باشد.

مثال

این مثال، مقدار ورودی متغیر را تست می کند. اگر مقدار اشتباه باشد، یک خطا (exception) به سمت catch پرتاب (throw) می شود. قسمت catch خطا را می گیرد و پیغام مناسب را چاپ می کند.

مثال (مدیریت خطاها در JavaScript)

<script>
function myFunction()
{
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)
  {
  var y=document.getElementById("mess");
  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>
خودتان امتحان کنید »

توجه داشته باشید که در مثال بالا اگر در تابع getElementById مشکلی رخ دهد، خطای مناسب با آن پرتاب (throw) خواهد شد. 

آموزش صوتی JavaScript

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه