反转字符串算法 - JavaScript
Reverse a string algorithm - 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
字符串从0开始索引,所以最后一个索引比字符串的长度少1。这意味着你应该做 var i=str.length-1
而不是 var i=str.length
.
试试这个代码
function reverseString(str) {
Let newString = "";
for (let i = str.length - 1; i >= 0; i--) {
newString += str[i];
}
return newString; // "olleh"
}
reverseString('hello');
我正在尝试解决此算法,但一开始就未定义。任何人都可以解释为什么会发生这种情况,以便我解决它吗?
// 给定一个字符串 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
字符串从0开始索引,所以最后一个索引比字符串的长度少1。这意味着你应该做 var i=str.length-1
而不是 var i=str.length
.
试试这个代码
function reverseString(str) {
Let newString = "";
for (let i = str.length - 1; i >= 0; i--) {
newString += str[i];
}
return newString; // "olleh"
}
reverseString('hello');