أمثلة على سلسلة جافا سكريبت الفرعية - طرق الشرائح ، والسلسلة الفرعية ، والسلسلة الفرعية في JS

في البرمجة اليومية ، نحتاج غالبًا إلى العمل مع السلاسل. لحسن الحظ ، هناك العديد من الطرق المضمنة في JavaScript والتي تساعدنا أثناء العمل مع المصفوفات والسلاسل وأنواع البيانات الأخرى. يمكننا استخدام هذه الأساليب في عمليات مختلفة مثل البحث والاستبدال وتسلسل السلاسل وما إلى ذلك.

يعد الحصول على سلسلة فرعية من سلسلة واحدة من أكثر العمليات شيوعًا في JavaScript. في هذه المقالة ، ستتعلم كيفية الحصول على سلسلة فرعية باستخدام 3 طرق مضمنة مختلفة. لكن أولاً ، اسمحوا لي أن أشرح بإيجاز ما هي السلسلة الفرعية.

ما هي سلسلة فرعية؟

السلسلة الفرعية هي مجموعة فرعية من سلسلة أخرى:

"I am learning JavaScript and it is cool!" --> Original String "I am learning JavaScript" --> Substring "JavaScript is cool!" --> Another Substring

كما في المثال أعلاه ، نحتاج في بعض الحالات إلى الحصول على سلسلة فرعية أو أكثر من جملة كاملة أو فقرة. لنرى الآن كيفية القيام بذلك في JavaScript بثلاث طرق مختلفة.

يمكنك أيضًا مشاهدة نسخة الفيديو من أمثلة الاستخدامات هنا:

1. الطريقة الفرعية ()

لنبدأ بطريقة السلسلة الفرعية (). تحصل هذه الطريقة أساسًا على جزء من السلسلة الأصلية وتعيدها كسلسلة جديدة. تتوقع طريقة السلسلة الفرعية معلمتين:

string.substring(startIndex, endIndex);
  • startIndex : يمثل نقطة البداية للسلسلة الفرعية
  • endIndex : يمثل نقطة نهاية السلسلة الفرعية (اختياري)

دعونا نرى الاستخدام في مثال. افترض أن لدينا سلسلة المثال أدناه:

const myString = "I am learning JavaScript and it is cool!";

الآن إذا قمنا بتعيين startIndex كـ 0 و endIndex كـ 10 ، فسنحصل على أول 10 أحرف من السلسلة الأصلية:

ومع ذلك ، إذا قمنا بتعيين فهرس بداية فقط وليس فهرس نهاية لهذا المثال:

ثم نحصل على سلسلة فرعية تبدأ من الحرف السادس حتى نهاية السلسلة الأصلية.

بعض النقاط الإضافية:

  • إذا كانت startIndex = endIndex ، تقوم طريقة السلسلة الفرعية بإرجاع سلسلة فارغة
  • إذا كان كل من startIndex و endIndex أكبر من طول السلسلة ، فإنها تُرجع سلسلة فارغة
  • إذا كانت startIndex> endIndex ، فإن طريقة السلسلة الفرعية تستبدل الوسيطات وتعيد سلسلة فرعية ، بافتراض أنها endIndex> startIndex

2. طريقة الشريحة ()

طريقة slice () تشبه طريقة substring () وتقوم أيضًا بإرجاع سلسلة فرعية من السلسلة الأصلية. تتوقع طريقة الشريحة أيضًا نفس المعلمتين:

string.slice(startIndex, endIndex);
  • startIndex : يمثل نقطة البداية للسلسلة الفرعية
  • endIndex : يمثل نقطة نهاية السلسلة الفرعية (اختياري)

النقاط المشتركة لطرق substring () و slice ():

  • إذا لم نقم بتعيين فهرس نهاية ، فسنحصل على سلسلة فرعية تبدأ من رقم الفهرس المحدد حتى نهاية السلسلة الأصلية:
  • إذا قمنا بتعيين كل من startIndex و endIndex ، فسنحصل على الأحرف بين أرقام الفهرس المحددة للسلسلة الأصلية:
  • إذا كانت startIndex و endIndex أكبر من طول السلسلة ، فإنها تُرجع سلسلة فارغة

اختلافات طريقة الشريحة ():

  • إذا كانت startIndex> endIndex ، فإن طريقة slice () ترجع سلسلة فارغة
  • إذا كان startIndex رقمًا سالبًا ، فسيبدأ الحرف الأول من نهاية السلسلة (معكوسًا):
ملاحظة: يمكننا استخدام طريقة slice () أيضًا لمصفوفات JavaScript. يمكنك أن تجد هنا مقالتي الأخرى حول طريقة الشرائح لمعرفة استخدام المصفوفات.

3. الطريقة الفرعية ()

وفقًا لوثائق موزيلا ، تعتبر طريقة substr () وظيفة قديمة ويجب تجنب استخدامها. لكنني سأشرح بإيجاز ما يفعله لأنك قد تراه في المشاريع القديمة.

تُرجع الدالة substr () أيضًا سلسلة فرعية من السلسلة الأصلية وتتوقع معلمتين على النحو التالي:

string.substring(startIndex, length);
  • startIndex : يمثل نقطة البداية للسلسلة الفرعية
  • الطول : عدد الأحرف المراد تضمينها (اختياري)

يمكنك أن ترى الفرق هنا: طريقة substr () تتوقع المعلمة الثانية على أنها طول بدلاً من endIndex:

في هذا المثال ، يحسب بشكل أساسي 5 أحرف بدءًا من startIndex المحدد ويعيدها كسلسلة فرعية.

ومع ذلك ، إذا لم نحدد المعامل الثاني ، فإنه يعود إلى نهاية السلسلة الأصلية (كما تفعل الطريقتان السابقتان):

ملاحظة: جميع الطرق الثلاثة تعيد السلسلة الفرعية كسلسلة نصية جديدة ولا تغير السلسلة الأصلية.

يتم إحتوائه

هذه هي الطرق الثلاث المختلفة للحصول على سلسلة فرعية في JavaScript. هناك العديد من الطرق المضمنة الأخرى في JS والتي تساعدنا كثيرًا عند التعامل مع أشياء مختلفة في البرمجة. إذا وجدت هذا المنشور مفيدًا ، فيرجى مشاركته على وسائل التواصل الاجتماعي.

إذا كنت تريد معرفة المزيد عن تطوير الويب ، فلا تتردد في متابعتي على Youtube !

شكرا لقرائتك!