Title Case a Sentence

Basic Algorithm Scripting: Title Case a Sentence | freeCodeCamp.org

我的,没有完成要求

function titleCase(str) {
  let newStrArr = []
  for (let i = 0; i < str.split(' ').length; i++) {
    newStrArr.push(
      str.split(' ')[i][0].toUpperCase() +
        str.split(' ')[i].slice(1).toLowerCase(),
    )
  }
  return newStrArr.join(' ')
}

console.log(titleCase("I'm a little tea pot"))

加了 .toLowerCase() 可以了。

这样写有些繁琐。

for…in

function titleCase(str) {
  const newTitle = str.split(' ')
  const updatedTitle = []
  for (let st in newTitle) {
    updatedTitle[st] =
      newTitle[st][0].toUpperCase() + newTitle[st].slice(1).toLowerCase()
  }
  return updatedTitle.join(' ')
}

map()

  function titleCase(str) {
    return str
      .toLowerCase()
      .split(' ')
      .map((val) => val.replace(val.charAt(0), val.charAt(0).toUpperCase()))
      .join(' ')
  }

  titleCase("I'm a little tea pot")

正则表达式

function titleCase(str) {
  return str.toLowerCase().replace(/(^|\s)\S/g, (L) => L.toUpperCase())
}
欢迎通过「邮件」或者点击「这里」告诉我你的想法
Welcome to tell me your thoughts via "email" or click "here"