كائنEvalError في JavaScript
الكائن EvalError يُشير إلى حدوث خطأ في الدالة العامة eval(). من المهم ملاحظة أنَّ هذا الاستثناء لم يعد يرمى من لغة JavaScript؛ لكن الكائن EvalError قد بقي لأغراض التوافقية.
البنية العامة
new EvalError([message])
message
وسيط اختياري، وهو وصفٌ نصيٌّ للخطأ موجَّهٌ للبشر.
الخاصيات والدوال التابعة للدالة البانية EvalError
الخاصيات
EvalError.prototype
تُمثِّل هذه الخاصية كائن prototype التابعة للكائن EvalError.
الدوال
الدالة البانية EvalError لا تملك أيّة دوال تابعة لها مباشرةً، وإنما ترث بعض الخاصيات عبر سلسلة prototype.
الكائن prototype
الخاصيات
EvalError.prototype.constructor
تُحديد الدالة التي ستُنشِئ كائن prototype لكائنات EvalError؛ راجع صفحة الخاصيةObject.prototype.constructor لمزيدٍ من التفاصيل.
EvalError.prototype.message
رسالة الخطأ. وعلى الرغم من أنَّ مواصفة ECMAScript تقول أنَّه يجب أن يوفِّر كائن EvalError قيمةً خاصةً به للخاصية message، لكنه يرث الخاصية Error.prototype.message في أغلب محركات JavaScript.
EvalError.prototype.name
اسم الخطأ. هذه الخاصية موروثة من Error.prototype.name.
الدوال
كائن prototype التابع للكائن EvalError لا يملك أيّة دوال تابعة له مباشرةً، لكنه يرث بعض الخاصيات عبر سلسلة prototype.
أمثلة
الاستثناء EvalError لم يعد مستخدمًا في معيار ECMAScript الحالي، وبالتالي لن يُرمى تلقائيًا في زمن التشغيل؛ فهذا الكائن متوافر لأغراض تتعلق بالتوافقية مع إصدارات قديمة من معيار ECMAScript.
سنبيّن مثالًا عن هذا الاستثناء برميه يدويًا:
try {
throw new EvalError('Hello');
} catch (e) {
console.log(e instanceof EvalError); // true
console.log(e.message); // "Hello"
console.log(e.name); // "EvalError"
}
دعم المتصفحات
| الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1. لم يعد هذا الكائن مستخدمًا بدءًا من هذا المعيار.
- معيار ECMAScript 3rd Edition .