RegExp.prototype.toString()
< JavaScript | RegExp
الدالة RegExp.prototype.toString() تُعيد سلسلةً نصيةً تُمثِّل الكائن التعابير النمطية المُحدَّد.
البنية العامة
regexObj.toString();
القيمة المعادة
سلسلة نصيّة تُمثِّل الكائن RegExp.
الوصف
الكائن RegExp يُعيد تعريف الدالة toString الموجودة في الكائنObject؛ فهو لا يرث الدالة Object.prototype.toString(). فلكائنات RegExp ستُعيد الدالة toString تمثيلًا نصيًا لكائن التعبير النمطي.
أمثلة
استخدام الدالة toString()
المثال الآتي يعرض القيمة النصية لكائن RegExp:
var myExp = new RegExp('a+b+c');
console.log(myExp.toString()); // '/a+b+c/'
var foo = new RegExp('bar', 'g');
console.log(foo.toString()); // '/bar/g'
التعابير النمطية الفارغة وتهريب المحارف
بدءًا من ECMAScript 5، لم تعد هذه الدالة تُعيد سلسلةً نصيةً فارغةً للتعابير النمطية الفارغة، وإنما أصبحت تعيد "(?:)"؛ إضافةً إلى ذلك، أصبحت محارف الانتقال إلى سطرٍ جديد (مثل "\n") مهربةً الآن:
new RegExp().toString(); // "/(?:)/"
new RegExp('\n').toString() === '/\n/'; // true. قبل الإصدار الخامس
new RegExp('\n').toString() === '/\\n/'; // true. بدءًا من الإصدار الخامس
دعم المتصفحات
| الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 3rd Edition.