字符串输出混合同一字符两次


var e1, e2, e3, e4, e5, e6, e7, str;
function capFirstLetter(str){
  return str.substr(0,1).toUpperCase() +  str.substr(1).toLowerCase();
}
e1 = prompt("Enter first name", "john");
e1 = capFirstLetter(e1);
e3 = prompt("Enter the college name you are attending to", "seneca college");
e3 = e3.split(" ");
var example2 = " ";
for(var i=0; i<e3.length; i++){
  example2 += capFirstLetter(e3[i]) + e3[i].substr(1,e3[i].length-1) + " ";
}
console.log(example2);

这就是我的代码。e3将使用名为 capFirstLetter 的函数,并将每个单词的每个首字母大写。

但是,此代码将输出的是"Burnhamurnham Collegeollege"。

而不是输出"伯纳姆学院"。所以,它输出了单词"urnham"和"ollege"的额外字母,所以我猜它会在没有第一个字母的情况下再次输出一次。有人知道如何解决这个问题吗?

所以,它输出了额外的单词 urnham 和 ollege 字母,所以我猜测它在没有第一个字母的情况下再次输出。有人知道如何解决这个问题吗?

删除e3[i].substr(1,e3[i].length-1)example2 += capFirstLetter(e3[i]) + " ";

它创建了额外的 1 个缩进,所以它的输出/t 伯纳姆学院,猜猜为什么?

删除var example2 = " ";中的空格

最新更新