string نوع string
آخر تحديث: 2026-10-22
string نوع string
يمثّل string القيم النصية. استخدمه لتعليق كل بيانات توجد في صورة محارف، مثل الأسماء والرسائل والمعرّفات؛ فهو أكثر الأنواع شيوعًا في الكود اليومي.
| المجموعة | الأنواع الأساسية |
|---|---|
| النوع | نوع |
| الوضع الصارم | غير مطلوب |
ℹ️ معلومة يحوّل المحرر لغة TypeScript إلى JavaScript ثم يشغّلها (بدون فحص أنواع)؛ راجع ناتج كل مثال لنتيجة فحص الأنواع.
📝 الصيغة
let title: string = "دليل TypeScript";
let greeting = `مرحبًا, ${title}`; // القوالب النصية تضمّن المتغيرات
⚙️ المعاملات
| `${expr}` | قالب نصي (template literal): سلسلة بين علامتي اقتباس مائلتين يمكن تضمين أي تعبير داخل ${} |
|---|
القيمة المُعادة:لا قيمة مُعادة — string تعليق نوع أساسي ولا يُنتج أي كود في وقت التشغيل.
▶ مثال
عدّل الكود أدناه واضغط «جرّب» لرؤية نتيجة التحويل:
الناتج:
Item TS-1001 x3
15 ITEM TS-1001 X3
(مخرجات التشغيل بعد التحويل؛ جعل label رقمًا ثم استدعاء .toUpperCase يؤدي إلى خطأ ترجمة)
💡 نقاط مهمة
ℹ️ معلومة علِّق دائمًا بالنوع string بحروف صغيرة ولا تستخدم نوع الغلاف String — فالنوعان ليسا الشيء نفسه؛ String يقبل أيضًا كائنات مثل new String().
💡 تلميح القوالب النصية أوضح من السَّلسَلة بـ + وتدعم النصوص متعددة الأسطر، فضلّها في الاستخدام اليومي.
⚠️ تنبيه لا يضمن string سوى كونه نصًا، لا تنسيق المحتوى؛ فالتحقق من صيغ مثل البريد الإلكتروني وأرقام الهواتف يتطلب تعابير نمطية في وقت التشغيل، ولا قدرة للنوع على ذلك.
🏷️ الأنواع الأساسية ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قادم قريبًا.
📚 دروس ذات صلة
❓ أسئلة شائعة
س ما الفرق بين string و String؟
ج string نوع القيم الأصلية، بينما String نوع كائنات الغلاف (يقبل كائنات مثل new String()). استخدم دائمًا string بحروف صغيرة في التعليق، فهو يقبل كل القيم النصية.
س ما الفرق بين القوالب النصية والسَّلسَلة بـ +؟
ج النتيجة واحدة، لكن القوالب النصية أسهل قراءةً، وتدعم الأسطر المتعددة، وتسمح بوضع أي تعبير داخل ${}؛ ويُنصح بها عند سَلسَلة النصوص الطويلة.
س ما علاقة الاتحاد الحرفي مثل "a" | "b" بالنوع string؟
ج string هو المجموعة الكاملة والاتحاد الحرفي جزء منها: لا يمكن إسناد string إلى "a" | "b"، بينما العكس ممكن. استخدم الاتحاد الحرفي عندما تحتاج إلى حصر القيم المسموحة (انظر مدخل literal-types).