String.prototype.slice()
الدالة String.prototype.slice()
تستخرج قسمًا من السلسلة النصية وتُعيده كسلسلة نصية جديدة.
البنية العامة
str.slice(beginIndex[, endIndex])
beginIndex
فهرس مكان بدء الاستخراج (يبدأ العد من الصفر)، وإذا كان سالبًا فسيعامل على أنَّه strLength + beginIndex
، إذ إنَّ strLength
هو طول السلسلة النصية (على سبيل المثال، إذا كان beginIndex
يساوي -3
فسيعامل على أنه strLength - 3
). إذا كانت قيمة المعامل beginIndex
أكبر أو تساوي طول السلسلة النصية، فستُعيد هذه الدالة سلسلةً نصيةً فارغةً.
endIndex
وسيطٌ اختياري، وهو الفهرس الذي يلي مكان نهاية الاستخراج (يبدأ العد من الصفر). المحرف الموجود عند هذا الفهرس لن يُضمَّن في السلسلة النصية المستخرجة. وإذا لم تُحدَّد قيمة للوسيط endIndex
فستستخرج هذه الدالة السلسلة النصية من beginIndex
حتى نهايتها. وإذا كانت قيمة هذا الوسيط سالبةً فستُعامل كما لو أنَّها strLength + endIndex
إذ إنَّ strLength
هو طول السلسلة النصية (فمثلًا، إذا كانت قيمة endIndex
هي -3
، فستُعامل كما لو أنَّها strLength - 3
).
القيمة المعادة
سلسلة نصية جديدة تحتوي على القسم المستخرج من السلسلة النصية الأصل.
الوصف
الدالة slice()
تستخرج النص من سلسلة نصية وتُعيد سلسلةً نصيةً جديدةً، والتغييرات التي تحدث على السلسلة النصية لن تؤثر على الأخرى.
لاحظ أنَّ الدالة slice()
تستخرج السلسلة النصية إلى الفهرس endIndex
لكن دون تضمينه في السلسلة المُستخرَجة. أي أنَّ الدالة str.slice(1, 4)
ستستخرج المحرف الثاني حتى المحرف الرابع (أي المحارف التي فهرسها هو 1 و 2 و 3).
مثالٌ آخر هو str.slice(2, -1)
الذي يستخرج المحرف الثالث إلى المحرف قبل الأخير في السلسلة النصية.
أمثلة
استخدام slice()
يبيّن المثال الآتي بعض حالات استخدام الدالة slice()
:
var str1 = 'The morning is upon us.', // طول السلسلة النصية هو 23
str2 = str1.slice(1, 8),
str3 = str1.slice(4, -2),
str4 = str1.slice(12),
str5 = str1.slice(30);
console.log(str2); // he morn
console.log(str3); // morning is upon u
console.log(str4); // is upon us.
console.log(str5); // ""
استخدام slice()
مع الفهارس السالبة
var str = 'The morning is upon us.';
str.slice(-3); // 'us.'
str.slice(-3, -1); // 'us'
str.slice(0, -1); // 'The morning is upon us'
دعم المتصفحات
الميزة | Chrome | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
الدعم الأساسي | نعم | نعم | نعم | نعم | نعم |
مصادر ومواصفات
- مسودة المعيار ECMAScript Latest Draft.
- معيار ECMAScript 2015 (6th Edition).
- معيار ECMAScript 5.1.
- معيار ECMAScript 3rd Edition .