反转字符串算法-JavaScript



我试图解决这个算法,但一开始就没有定义。有人能解释为什么会发生这种事吗?这样我就可以解决它了?

//给定一个字符串S,反转该字符串而不反转其单个单词。单词用点分隔。

function reverseStr(str){
newStr="";
for(var i=str.length;i>=0;i--){
newStr+=str[i];
}
console.log(newStr);
}
reverseStr("hcum.yrev.margorp.siht.ekil.i");

输出:undefinedi.like.this.program.very.much

试试这个代码

function reverseString(str) {
Let newString = "";
for (let i = str.length - 1; i >= 0; i--) { 
newString += str[i];
}
return newString; // "olleh"
}

reverseString('hello');

字符串的索引从0开始,因此最后一个索引比字符串的长度小1。这意味着您应该执行var i=str.length-1而不是var i=str.length

最新更新