دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۲
  • آبان

جلسه ۳۹ : مدیریت خطا در جاوا اسکریپت

  • دسته‌بندی‌ها :
جلسه ۳۹ : مدیریت خطا در جاوا اسکریپت
    • جزئیات
    • نوع محتواآموزش تصویری

      با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
      در این جلسه قصد داریم تا مدیریت خطا در جاوا اسکریپت JavaScript و دستورات try و catch در جاوا اسکریپت را به شما آموزش دهیم.

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

      مدیریت خطا در جاوا اسکریپت

      برای مدیریت خطا در جاوا اسکریپت از چند دستور استفاده خواهیم کرد:

      • try – در این بلوک کدی که احتمال می دهیم خطا تولید کند را قرار می دهیم
      • catch – مدیریت و پردازش خطا در این بلوک انجام می شود
      • throw – این دستور باعث ایجاد خطا سفارشی می شود
      • finally – بعد از بلوک try و catch بدون توجه به نتیجه اجرا می شود

      خطاها اتفاق خواهند افتاد!

      هنگام اجرای کد جاوا اسکریپت ممکن است خطاهای مختلف رخ دهد.

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

      مثال : رخ دادن خطاها
      خودتان امتحان کنید »

      نکته : جاوا اسکریپت adddlert را به عنوان یک خطا تفسیر کرده  و catch  را برای اجرای آن اجرا می کند.

      دستورات try و catch در جاوا اسکریپت

      دستور try این امکان را به ما می دهد تا بلوکی را تعریف کنیم تا خطا های احتمالی در آن رخ دهد.

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

      ساختار دستور:

      مثال : 

      پرتاب Throws خطا در جاوا اسکریپ

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

      نکته : جاوا اسکریپت یک شی Error با دو ویژگی: نام و پیام ایجاد خواهد کرد.

      دستور throw در جاوا اسکریپت

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

      مثال : 

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

      مثال اعتبار سنجی ورودی

      در این مثال ما یک فیلد ورودی را بررسی می کنیم. اگر مقدار ورودی استباه باشد یک خطا یا استثنا (err) پرتاب می شود.

      استثنا (err) در بلوک catch گرفته شده و پیغام خطا نمایش داده می شود:

      مثال : نمونه ای از یک اعتبار سنجی
      خودتان امتحان کنید »

      مثال فوق یک مثال ساده بود.

      در مرورگر های مدرن امروزی ما اغلب از جاوا اسکریپت و HTML برای کنترل ورودی و مدیریت استثنا استفاده می کنیم:

      مثال : 

      دستور finally در جاوا اسکریپت

      از دستور finally برای اجرا شدن قطعه کدی بعد از اجرای بلوک های try و catch استفاده می کنیم.

      ساختار دستور:

      مثال : 

      مثال:

      مثال : مثالی از دستور finally
      خودتان امتحان کنید »

      Error Object

      جاوا اسکریپت یک شئ خطا دارد که اطلاعاتی را پیرامون خطا به ما می دهد. (در مثال بالا این شئ err نام دارد)

      این شئ دو پروپرتی دارد: name  و message

      توضیحاتProperty
      نام خطا رخ داده را بر می گرداندname
      پیغام خطا را بر می گرداند.message

      مقادیر name

      پروپرتی name 6 نوع مقدار مختلف را می تواند بر گرداند:

      توضیحاتنام خطا
      یک خطا در تابع ()eval رخ داده استEvalError
      عدد خارج از محدودهRangeError
      مرجع refrence غیر مجازReferenceError
      خطای سینتکسی (ساختار دستوری)SyntaxError
      خطا ی نوعTypeError
      یک خطا در تابع ()encodeURI رخ داده استURIError

      شش مورد از مقادیر مختلف در زیر شرح داده شده است:

      EvalError

      یک EvalError خطایی را در تابع ()eval نشان می دهد.

      نکته : نسخه های جدیدتر جاوا اسکریپت هیچ EvalError را اجرا نمی کنند. به جای آن از SyntaxError استفاده کنید.

      RangeError

      RangeError اگر شما از یک شماره خارج از دامنه مقادیر قانونی استفاده کنید، اجرا می شود.

      به عنوان مثال: شما نمی توانید تعداد رقم های قابل توجهی از یک عدد را به ۵۰۰ تنظیم کنید.

      مثال : نمونه ای از rangeerror
      خودتان امتحان کنید »

      ReferenceError

      اگر از مرجع یک متغیر که اعلام نشده است استفاده کنید ReferenceError  اجرا  می شود:

      مثال : خطای referenceerror
      خودتان امتحان کنید »

      SyntaxError

      اگر شما سعی می کنید کد را با یک خطای سینتکس ارزیابی کنید، یک SyntaxError رخ می دهد.

      مثال : خطای syntaxerror
      خودتان امتحان کنید »

      TypeError

      اگر از یک مقدار خارج از محدوده انواع مورد انتظار استفاده می کنید، TypeError رخ می دهد:

      مثال : خطای typeerror
      خودتان امتحان کنید »

      URIError

      اگر شما از کاراکترهای غیرقانونی در یک تابع URI استفاده کنید، URIError رخ می دهد:

      مثال : خطای urierror
      خودتان امتحان کنید »

      خصوصیات آبجکت غیر استاندارد

      موزیلا و مایکروسافت برخی ویژگی های آبجکت خطای غیر استاندارد را بیان می کنند:

      fileName (موزیلا)
      lineNumber (موزیلا)
      ستون شماره (موزیلا)
      پشته (موزیلا)
      توضیحات (مایکروسافت)
      شماره (مایکروسافت)

      از این ویژگی ها در وب سایت های عمومی استفاده نکنید. آنها در همه مرورگرها کار نخواهند کرد.

      جلسه مدیریت خطا در جاوا اسکریپت JavaScript نیز به پایان رسید.

      در جلسه بعدی به آموزش استفاده از Strict Mode در جاوا اسکریپت خواهیم پرداخت. با ما همراه باشید.

      QR:  جلسه ۳۹ : مدیریت خطا در جاوا اسکریپت
      به اشتراک بگذارید