Javascript 这个箱子坏了

Javascript 这个箱子坏了,javascript,loops,Javascript,Loops,我创建了这段代码,其中大部分代码都是使用toUpperCase,它应该使单词的每个首字母都大写。没有错误,因此我不确定该方法当前为何不起作用。为什么会这样呢 let str ="insert string here" String.prototype.toCase = function () { let arrayWord = str.split(""); for (let i = 0; i<str.length; i++){ if (arrayWord[i]===" ")

我创建了这段代码,其中大部分代码都是使用toUpperCase,它应该使单词的每个首字母都大写。没有错误,因此我不确定该方法当前为何不起作用。为什么会这样呢

let str ="insert string here"
String.prototype.toCase = function () {
  let arrayWord = str.split("");
  for (let i = 0; i<str.length; i++){
    if (arrayWord[i]===" "){
      arrayWord[i+1].toUpperCase();
    }
    else{
    }
  }
  let result = arrayWord.join("");
  return (result)
};
let str=“在此处插入字符串”
String.prototype.toCase=函数(){
让arrayWord=str.split(“”);

对于(设i=0;i您忘记分配的结果,因为它返回的是修改后的字符串,而不是处理调用的字符串

返回转换为大写的调用字符串值

添加一个任务,如:
arrayWord[i+1]=arrayWord[i+1].toUpperCase();

演示
let str=“在此处插入字符串”
String.prototype.toCase=函数(){
让arrayWord=str.split(“”);
for(设i=0;iconsole.log(str.toCase());
toUpperCase返回修改后的字符串,它不修改从中调用它的字符串

var a = "donald";
var b = a.toUpperCase();

console.log(a) // donald
console.log(b) // DONALD

在这里,我让它保持了代码结构,但它仍然有一些问题。如果你想以后,我会键入一个解决方案,其中考虑到所有角落的情况

var str = "donald fauntleroy duck"

var str_array = str.split("");
var ret_str = ""
for(var i=0; i<str_array.length; i++)
    {
    if(i > 0)
        {//avoid checking out of scope
        if(str_array[i-1] === " ")
            {
            ret_str += str_array[i].toUpperCase();
            }
        else
            {
            ret_str += str_array[i];
            }
        }
    }

return(ret_str);
var str=“donald fauntleroy duck”
var str_array=str.split(“”);
var ret_str=“”
对于(变量i=0;i 0)
{//避免签出范围
if(str_数组[i-1]=“”)
{
ret_str+=str_数组[i].toUpperCase();
}
其他的
{
ret_str+=str_数组[i];
}
}
}
返回(返回);

设置新值
arrayWord[i+1]=arrayWord[i+1].toUpperCase();
此函数使单词的第一个字母大写:

函数大写第一个字母(字符串){
返回string.charAt(0.toUpperCase()+string.slice(1);
}
var输出=”;
let str=“在此处插入字符串”;
str=str.split(“”).forEach(itm=>output+=uppercaseFirstLetter(itm)+“”);

console.log(输出);
函数的输出是什么?