我一直在 Coderbyte 解决一些简单的 JavaScript 挑战。其中之一是取一个字符串并将每个单词的第一个字母大写。我已经解决了这几种方法。首先通过将单词转换为数组,然后通过“操作”字符串本身。我想知道是否首选这些选项中的任何一个?也就是说,我收到了一些反馈,建议操作字符串通常不是一个好主意,因为它们是不可变的,这意味着我并不是真的在操作字符串,而是用另一个字符串替换一个字符串。我不确定为什么这是一件坏事。可能是内存问题还是速度问题?无论如何,我的解决方案如下。对于任何反馈,我们都表示感谢。
function LetterCapitalize(str) {
str = str.split(" ");
for (i=0; i<str.length; i++){
str1 = str[i].split("");
str1[0] = str1[0].toUpperCase();
str[i] = str1.join("");
}
str = str.join(" ");
return str;
}
function LetterCapitalize(str) {
str = str.split(" ");
for (var i=0; i<str.length; i++){
console.log(str[i].length);
str[i]=str[i].charAt(0).toUpperCase()+str[i].slice(1,str[i].length);
}
str = str.join(" ");
return str;
}