javascript - 标题大小写 JavaScript

标签 javascript arrays for-loop lowercase charat

我正在尝试创建一个函数,在输入 toLowerCase() 之后,会将数组中每个元素的第一个字母大写。

function title_case ( String ) {
    var result = "";
    var text = String.toLowerCase().split(" ");
    for (var i = 0; i < text.length; i++) {
      var c = text[i].charAt(0).toUpperCase();
      result = result + c;
    }
    return result;
  }

输入:

document.write( title_case( "a kitty PUrrs") );

当前代码的结果输出是 AKP。我正在尝试找出一种方法来删除带有 charAt(1) 的小写字符,然后在可能的情况下为输出使用 join() 。我在正确的轨道上吗?我知道有更简单的方法,但我正在尝试按照这些思路学习一些东西。

最佳答案

您可以不删除第一个字符,而是在第一个字符之后创建字符串其余部分的子字符串。即:

result = result + c + text[i].substring(1, text[i].length()-1) + " ";

text[i].substring(1, text[i].length()-1) 获取单词从第二个字符到单词结尾的部分(kind of就像“删除”第一个字符)。

而且您不需要用于字符串的 join() 函数,只需 + 用于连接。末尾的 "" 用空格分隔单词。在函数结束时,您可以返回 result.trim() 以去除最后一个空格。

关于javascript - 标题大小写 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49951486/

相关文章:

arrays - 将 PFUsers 添加到 tableView 只会加载一个用户?

python - 在 python pandas 中通过索引减去数据帧(python pandas)的行的最有效方法是什么

Java 为 ( x : y) execution

r - 用 R 创建大圆图

javascript - 创建一个按钮到新的路由reactJS

javascript - 如何使用 FastAPI 为跨源请求设置 cookie

javascript - 如何使用 getElementsByClassname 选择两个输入字段?

javascript - Headless chrome print-to-pdf 错误地显示 Chart.JS javascript Canvas

c# - 在 C# 中,是否可以在不创建新数组的情况下将字节数组转换为另一种类型?

C多维数组堆赋值