أساسيات السلاسل النصية
جزء من قسم Logic & Flow في رحلة JavaScript على Coddy — الدرس 1 من 65.
في لغة JavaScript، تُعد السلاسل النصية (strings) غير قابلة للتغيير (immutable). وهذا يعني أنه بمجرد إنشاء سلسلة نصية، لا يمكن تغيير قيمتها. أي عملية تبدو وكأنها تعدل سلسلة نصية تقوم في الواقع بإنشاء سلسلة نصية جديدة.
إليك مثالاً:
let str = "Hello";
str[0] = "h"; // هذا لا يعمل
console.log(str); // لا يزال يطبع "Hello"عندما تقوم بإجراء عمليات على السلاسل النصية، فإنك تقوم بإنشاء سلاسل نصية جديدة:
let str = "Hello";
let newStr = str + " World";
console.log(str); // "Hello"
console.log(newStr); // "Hello World"بينما تعد السلاسل النصية (strings) والمصفوفات (arrays) أنواع بيانات مختلفة، إلا أنها تشترك في الكثير من الطرق (methods) المتشابهة. على سبيل المثال، كلاهما يدعم طرقاً مثل:
includes()indexOf()lengthslice()
ومع ذلك، تذكر أنه على عكس المصفوفات، فإن السلاسل النصية غير قابلة للتغيير (immutable)، لذا فإن الطرق التي تعدل المصفوفات (مثل push() أو pop()) غير موجودة للسلاسل النصية.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
ورقة مرجعية
السلاسل النصية (Strings) في JavaScript هي غير قابلة للتغيير (immutable) - بمجرد إنشائها، لا يمكن تغيير قيمتها. أي عملية تقوم بإنشاء سلسلة نصية جديدة:
let str = "Hello";
str[0] = "h"; // هذا لا يعمل
console.log(str); // لا تزال النتيجة "Hello"let str = "Hello";
let newStr = str + " World";
console.log(str); // "Hello"
console.log(newStr); // "Hello World"تشترك السلاسل النصية والمصفوفات في طرق (methods) متشابهة مثل includes()، و indexOf()، و length، و slice()، لكن السلاسل النصية لا تملك طرق تعديل المصفوفات مثل push() أو pop().
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1السلاسل النصية بعمق
أساسيات السلاسل النصيةالتكرار عبر السلاسل النصيةTemplate Literalsدوال السلاسل النصيةمراجعة - String Weaver2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار عبر المجموعاتإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم وهل هي فارغةالنسخ والمسحملخص - أساسيات المجموعات8مواضيع شيقة حول الـ Arrays
تفكيك الـ Arrayاستخدام الـ Spread Syntax في الـ Arraysالـ Sparse Arraysمراجعة - ورشة عمل الـ Arrays3JSON الجزء الأول
ما هو JSON؟التحقق من وجود المفتاحObject MethodsSpread Operator الجزء الأولSpread Operator الجزء الثانيحذف المفاتيحمراجعة - معالجة مفاتيح JSON