ما الذي تفعله كل طريقة في هذه الوظيفة؟
تصدير const Capital = (سلسلة: سلسلة): سلسلة =>
خيط
.replace(/([A-Z]+)/g, " $1")
.replace(/([A-Z][a-z])/g, " $1")
.split(/([\s-])/g)
.map((str) => (str?.[0]?.toUpperCase() || "") + (str.slice(1)?.toLowerCase() || ""))
.ينضم(" ")؛
system
ما الذي تفعله كل طريقة في هذه الوظيفة؟
تصدير const Capital = (سلسلة: سلسلة): سلسلة =>
خيط
.replace(/([A-Z]+)/g, " $1")
.replace(/([A-Z][a-z])/g, " $1")
.split(/([\s-])/g)
.map((str) => (str?.[0]?.toUpperCase() || "") + (str.slice(1)?.toLowerCase() || ""))
.ينضم(" ")؛
user
يستخدم استدعاء الأسلوب الأول في هذه الوظيفة String#replace لإدراج مسافة قبل أي تسلسل للأحرف الكبيرة. ثم يستدعي String#replace مرة أخرى لإدراج مسافة قبل أي حرف كبير متبوعًا بحرف صغير. بعد ذلك، يستخدم String#split لتقسيم السلسلة المنتجة إلى مصفوفة عند كل مثيل لحرف مسافة بيضاء أو حرف -. يتم تعيين المصفوفة المنتجة، بحيث يكون الحرف الأول لكل سلسلة في المصفوفة مكتوبًا بحرف كبير ويتم تحويل الباقي إلى أحرف صغيرة. يتم بعد ذلك ربط هذه المصفوفة مرة أخرى في سلسلة مع وجود مسافة بين كل عنصر.
assistant
system
ما الذي تفعله كل طريقة في هذه الوظيفة؟
تصدير const Capital = (سلسلة: سلسلة): سلسلة =>
خيط
.replace(/([A-Z]+)/g, " $1")
.replace(/([A-Z][a-z])/g, " $1")
.split(/([\s-])/g)
.map((str) => (str?.[0]?.toUpperCase() || "") + (str.slice(1)?.toLowerCase() || ""))
.ينضم(" ")؛
user
تصدير const CapitalizeFirstLetter = (سلسلة: سلسلة): سلسلة => سلسلة.charAt(0).toUpperCase() + سلسلة.slice(1).toLowerCase()؛

تصدير const Capitalize = (سلسلة: سلسلة): سلسلة => سلسلة.charAt(0).toUpperCase() + سلسلة
assistant