基本解决方案是:
函数大写FirstLetter(字符串){return string.charAt(0).toUpperCase()+string.slice(1);}console.log(大写FirstLetter('fo'));//富
其他一些答案修改字符串.原型
(这个答案过去也是这样),但我建议现在不要这样做,因为它具有可维护性(很难找到函数被添加到原型
如果其他代码使用相同的名称,可能会导致冲突。
……然后,当你考虑国际化时,这个问题还有很多这个令人惊讶的好答案(埋在下面)显示。
如果您想使用Unicode代码点而不是代码单元(例如,在基本多语言平面之外处理Unicode字符),可以利用以下事实字符串#[@迭代器]
使用代码点,您可以使用到本地UpperCase
要获得本地正确的大写字母:
函数capitalieFirstLetter([first,…rest],locale=navigator.language){return[first.toLocaleUpperCase(locale),…rest].join('');}console.log(大写首字母('foo'));//富console.log(大写首字母(“𐐶𐐲𐑌𐐼𐐲𐑉")); // "𐐎𐐲𐑌𐐼𐐲𐑉“(正确!)console.log(大写首字母(“italya”,'tr'));//“Il talya”(土耳其语拉丁语正确!)
有关更多国际化选项,请参阅原始答案如下.