要在 JavaScript 中将字符串中每个单词的首字母大写,我们可以:
使用 .split('') 将字符串拆分为单词数组。
使用 .map() 遍历单词数组。
对于每个单词,返回一个新单词,该单词是单词的第一个字母的大写形式添加到单词的其余部分。
使用 .join(' ') 将单词数组连接成一个字符串。
例如:index.js
function capitalizeWords(str) {
return str
.toLowerCase()
.split(' ')
.map((word) => word.charAt(0).toUpperCase() + word.slice(1))
.join(' ');
// Welcome To Coding Beauty
console.log(capitalizeWords('WELCOME to coding beauty'));
// JavaScript And TypeScript
console.log(capitalizeWords('JAVASCRIPT AND TYPESCRIPT'));
我们的 capitalizeWords() 函数接受一个字符串并返回一个所有单词都大写的新字符串。
首先,我们使用 toLowerCase() 方法将整个字符串小写,确保只有每个单词的首字母大写。
// welcome to coding beauty
console.log('WELCOME to coding beauty'.toLowerCase());
提示:如果每个单词中的其余字母不需要小写,您可以删除对 toLowerCase() 方法的调用。
然后,我们在字符串上调用 String split() 方法将所有单词拆分到一个数组中。
// [ 'welcome', 'to', 'coding', 'beauty' ]
console.log('welcome to coding beauty'.split(' '));
创建数组后,我们调用它的 map() 方法,将回调函数作为参数。 将调用此函数并为数组中的每个单词返回一个结果。
在函数中,我们使用 charAt() 获取单词的第一个字符,使用 toUpperCase() 将其转换为大写,并将其与字符串的其余部分连接起来。
我们使用 String slice() 方法来获取字符串的剩余部分。 将 1 传递给 slice() 使其返回字符串中从第二个(索引为 1)字符到末尾的部分。
// [ 'Welcome', 'To', 'Coding', 'Beauty' ]
console.log(
'welcome to coding beauty'
.split(' ')
.map((word) => word.charAt(0).toUpperCase() + word.slice(1))
所以 map() 返回一个包含字符串中所有单词的数组,每个单词的第一个字母大写。
最后,我们使用 Array join() 方法将所有单词连接到一个字符串中。
将空格 (' ') 传递给 join() 会在结果字符串中用空格分隔单词。
// Welcome To Coding Beauty
console.log(['Welcome', 'To', 'Coding', 'Beauty'].join(' '));
英文原文:
https://javascript.plainenglish.io/javascript-capitalize-first-letter-of-each-word-in-string-22b631395937
function convertCurrency(currencyDigits) {
// Constants:
var MAXIMUM_NUMBER = 99999999999.99;
// Predefine the radix characters and currency sy...
前几天用网银给朋友转账,在金额一栏中输入阿拉伯数字,右边会立即显示出相应的汉语数字大写。感觉挺有意思,就到网上搜索一下现成代码(没怎么仔细找),找到一段 Java 的和一段 C# 的。不过感觉它们的实现都很繁琐,或者说不够优雅。最重要的是功能上有缺陷,比如 100 被翻译成“壹佰零拾零”,在汉语中我们习惯说“壹佰元整”。所以,就考虑自己动手写一个小程序。
我现在也有点思维定势了:一提起处理文