📝 Strings في JavaScript: عالم النصوص الرقمي 🎯
مرحباً بك في عالم الـ Strings! تخيل أنك تريد أن تخزن اسم مستخدم، أو رسالة ترحيبية، أو عنواناً لموقع إلكتروني في برنامجك. كل هذه البيانات النصية تُسمى Strings (سلاسل النصوص). في جافاسكريبت، الـ String هو ببساطة سلسلة من الأحرف يمكننا تخزينها في متغير والتعامل معها.
فكر في الـ String كقطار، حيث كل عربة تمثل حرفاً (مثل 'أ'، 'ب'، أو حتى مسافة ' '). هذا الدرس هو تذكرتك لفهم كيفية بناء هذا القطار والتحكم به خطوة بخطوة! 🚂
🔤 كيفية إنشاء Strings (ثلاث طرق رئيسية)
هناك عدة طرق لكتابة String في جافاسكريبت، وأكثرها شيوعاً:
- باستخدام علامتي الاقتباس الفردية
' 'let greeting = 'مرحباً بالعالم!'; console.log(greeting); // سيطبع: مرحباً بالعالم! - باستخدام علامتي الاقتباس المزدوجة
" "let userName = "أحمد"; console.log(userName); // سيطبع: أحمد - باستخدام علامتي backticks
` `(الأكثر قوة وسنتعرف على سبب ذلك لاحقاً)let message = `أهلاً وسهلاً`; console.log(message); // سيطبع: أهلاً وسهلاً
ملاحظة مهمة: يمكنك استخدام أي طريقة، لكن يجب الالتزام بنفس نوع علامات الاقتباس في بداية ونهاية النص. 'هذا صحيح'، "هذا صحيح"، لكن 'هذا خطأ" سيسبب لك خطأً في البرنامج.
📏 خاصية الطول (.length)
كيف تعرف عدد الأحرف في نصك؟ الجواب سهل باستخدام الخاصية السحرية .length. هذه الخاصية تُرجع عدد الأحرف في الـ String، بما في ذلك المسافات والرموز.
let courseName = "JavaScript";
console.log(courseName.length); // سيطبع: 10
let arabicWord = "جافاسكريبت";
console.log(arabicWord.length); // سيطبع: 11 (عدد الأحرف العربية)
🔗 دمج النصوص (Concatenation)
الدمج هو عملية ربط نصين أو أكثر معاً لإنشاء نص جديد. نستخدم علامة الزائد + للقيام بذلك.
let firstName = "Sara";
let lastName = "Ahmed";
let fullName = firstName + " " + lastName; // لاحظ إضافة المسافة " "
console.log(fullName); // سيطبع: Sara Ahmed
let welcome = "Welcome, " + fullName + "! 👋";
console.log(welcome); // سيطبع: Welcome, Sara Ahmed! 👋
💬 القوالب النصية (Template Literals)
تذكر علامات الـ backticks ` `؟ إنها الطريقة الحديثة والأقوى للتعامل مع النصوص. تسمح لك بحقن المتغيرات والتعبيرات مباشرة داخل النص باستخدام ${}، مما يجعل الكود أنظف وأسهل للقراءة.
let product = "book";
let price = 50;
// الطريقة القديمة (الدمج)
let oldWay = "The price of " + product + " is " + price + " dollars.";
console.log(oldWay);
// الطريقة الحديثة (القوالب النصية) - أفضل وأوضح!
let newWay = `The price of ${product} is ${price} dollars.`;
console.log(newWay); // سيطبع: The price of book is 50 dollars.
🔍 الوصول إلى الأحرف (Indexing)
كل حرف في الـ String له رقم تسلسلي يسمى Index. المهم أن تعرف أن الترقيم يبدأ من الصفر (0)، وليس من الواحد.
let word = "Nour";
// Index: 0 1 2 3
// Character: N o u r
console.log(word[0]); // سيطبع: N
console.log(word[1]); // سيطبع: o
console.log(word[2]); // سيطبع: u
console.log(word[3]); // سيطبع: r
console.log(word[4]); // سيطبع: undefined (لأنه لا يوجد حرف في الفهرس 4)
✂️ استخراج أجزاء من النص (Slicing)
ماذا لو أردت جزءاً معيناً من النص، مثل الأحرف الأولى من اسم المستخدم؟ نستخدم القطـع (Slicing) بالطريقة .slice(start, end).
start: الفهرس الذي نبدأ منه (شامله).end: الفهرس الذي ننتهي عنده (غير شامله، أي أننا نأخذ ما قبله).
let quote = "Learning is a treasure.";
// نريد كلمة "Learning" فقط (من الفهرس 0 إلى قبل الفهرس 8)
let part = quote.slice(0, 8);
console.log(part); // سيطبع: Learning
// إذا حددنا فهرس بداية فقط، سيأخذ من ذلك الفهرس حتى النهاية
let rest = quote.slice(8);
console.log(rest); // سيطبع: is a treasure.
🛡️ أحرف الهروب (Escape Characters)
ماذا تفعل إذا أردت كتابة نص يحتوي على علامتي اقتباس داخلية؟ مثل: قال: "أهلاً!". هنا نحتاج إلى أحرف الهروب. نستخدم الشرطة المائلة للخلف \ قبل علامة الاقتباس التي نريد أن تظهر كنص.
let correctSentence = "قال: \"أهلاً\"";
console.log(correctSentence); // سيطبع: قال: "أهلاً"
// أمثلة أخرى:
let newLine = "First Line.\nSecond Line."; // \n لسطر جديد
console.log(newLine);
let tabExample = "Name:\tAli"; // \t لمسافة تبويب
console.log(tabExample);
🎯 ملخص الدرس
تعلمنا اليوم أساسيات الـ Strings في جافاسكريبت! نحن الآن نعرف:
- كيفية إنشاء نصوص باستخدام
' '،" "، أو` `. - كيفية معرفة طول النص باستخدام
.length. - دمج النصوص مع
+. - استخدام القوالب النصية
` ${} `لكتابة كود أنظف. - الوصول إلى حرف معين عبر الفهرس الذي يبدأ من الصفر.
- قطع أجزاء من النص باستخدام
.slice(). - التعامل مع أحرف الهروب مثل
\"و\n.
الـ Strings هي لبنة أساسية في أي برنامج تفاعلي، وهي الطريقة التي نتحدث بها مع المستخدم! 🗣️
🎓 اختبر نفسك
التعليقات
شاركنا رأيك أو أسئلتك حول هذا المقال