使用Angular或打字稿将字符串的第一个字母大写[重复]
Posted
技术标签:
【中文标题】使用Angular或打字稿将字符串的第一个字母大写[重复]【英文标题】:Capitalize first letter of a string using Angular or typescript [duplicate] 【发布时间】:2018-08-24 02:05:44 【问题描述】:如何使用 Angular 或 typescript 将字符串的首字母大写?
【问题讨论】:
查看此[参考链接][博客]。会有解决办法的。 [博客]:***.com/questions/30207272/… 这不是重复的。管道是做到这一点的正确角度方式 【参考方案1】:function titleCaseWord(word: string)
if (!word) return word;
return word[0].toUpperCase() + word.substr(1).toLowerCase();
您也可以在模板中使用 TitleCasePipe
一些组件模板:
value |titlecase
【讨论】:
请注意,TitleCasePipe
会将字符串中每个单词的首字母大写,而不仅仅是整个字符串的首字母,所以TitleCasePipe
不是严格来说是所要求的选项。
这不应该是公认的答案。就像 Alex 提到的那样,TitleCasePipe 将大写单词。下面的答案应该被接受。另一种方法是自定义管道。
⚠️ 请谨慎使用此解决方案,因为在某些语言(如西班牙语)中,当您有问题字符串时,请以字符 ¿Esto es una pregunta?
开头。所以,当在西班牙语问题中应用这个算法时,不能正常工作。我添加这个:if (value[0] === '¡' || value[0] === '¿') return ( value[0] + value[1].toUpperCase() + value.substr(2).toLowerCase() );
【参考方案2】:
let str:string = 'hello';
str = str[0].toUpperCase() + str.slice(1);
【讨论】:
【参考方案3】:var str = 'santosh';
str = str ? str.charAt(0).toUpperCase() + str.substr(1).toLowerCase() : '';
【讨论】:
感谢您提供此代码 sn-p,它可能会提供一些有限的短期帮助。一个正确的解释would greatly improve 它的长期价值通过展示为什么这是一个很好的解决问题的方法,并将使它对未来有其他类似问题的读者更有用。请edit您的回答添加一些解释,包括您所做的假设,例如无法正常工作的语言。 是的,当然,感谢您的建议以上是关于使用Angular或打字稿将字符串的第一个字母大写[重复]的主要内容,如果未能解决你的问题,请参考以下文章