String.prototype.endsWith()‎

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

الدالة String.prototype.endsWith()‎ تُحدِّد إن كانت تنتهي سلسلةٌ نصيةٌ بمحارف سلسلةٍ نصيةٍ أخرى، وتُعيد القيمة true أو false.

البنية العامة

str.endsWith(searchString[, length])

searchString

السلسلة النصية التي سيُبحَث عنها في نهاية السلسلة النصية الأصلية.

length

قيمة اختيارية، وإذا حُدِّدَت فستتجاوز طول (length) السلسلة النصية التي سيُبحَث فيها، وإذا حُذِفَت فستكون القيمة الافتراضية مساويةً لطول السلسلة النصية. انظر الأمثلة.

القيمة المعادة

القيمة true إذا عُثِرَ على السلسلة النصية searchString في نهاية السلسلة النصية الأصلية، وإلا فستُعاد القيمة false.

الوصف

هذه الدالة تسمح لنا بمعرفة إن كانت تنتهي سلسلةٌ نصيةٌ بمحارف سلسلةٍ نصيةٍ أخرى.

حالة الأحرف

الدالة endsWith()‎ حساسةٌ لحالة الأحرف، أي أنَّ التعبير البرمجي الآتي سيُعيد القيمة false:

'Blue Whale'.endsWith('lE'); // false

أمثلة

المثال الآتي يستخدم الدالة endsWith()‎ للتحقق من نهاية السلسلة النصية الأصلية:

var str = 'To be, or not to be, that is the question.';

console.log(str.endsWith('question.')); // true
console.log(str.endsWith('to be'));     // false
console.log(str.endsWith('to be', 19)); // true

تعويض نقص دعم المتصفحات

أُضيفَت هذه الدالة إلى معيار ECMAScript 2015، وقد لا تتوافر في جميع المتصفحات بعد، لكن يمكنك استخدام الشيفرة الآتية لتعريفها في المتصفحات التي لا تدعمها:

if (!String.prototype.endsWith) {
  String.prototype.endsWith = function(search, this_len) {
    if (this_len === undefined || this_len > this.length) {
      this_len = this.length;
    }
    return this.substring(this_len - search.length, this_len) === search;
  };
}

دعم المتصفحات

الميزة Chrome Firefox Internet Explorer Opera Safari
الدعم الأساسي 41 17 غير مدعومة 28 9

على النقيض من متصفح IE، يدعم متصفح Edge هذه الميزة.

مصادر ومواصفات