javascript for循环赢得了迭代

时间:2015-02-09 18:10:50

标签: javascript for-loop

这里的新手程序员,我正在尝试一个目标是向后打印字符串的练习。这是我的代码:

function firstReverse(str) { 
    for(var i=str.length - 1; i >= 0;i --) {
        return(str[i]);
    }
};
firstReverse("riyad");

我一直收到回信#34; d",但不是整个字符串。不确定这里有什么问题?请帮忙!

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

function firstReverse(str) { 
    for(var i=str.length - 1; i >= 0;i --) {
        console.log(str[i]);
    }
};
  

我一直收到字母“d”的返回,但不是整个字符串

接受此输出是合理的,因为第一次代码进入for语句时,由于return语句,它将从中退出。换句话说,只有第一步才会执行for语句。

function firstReverse(str) { 
    for(var i=str.length - 1; i >= 0;i --) {
        document.write(str[i]);
    }
};

firstReverse("riyad");

答案 1 :(得分:1)

问题是, return 语句会破坏你的循环并返回它得到的第一个字母。

如果要反转字符串 - 您可以尝试将其转换为数组,将其反转并将新数组的元素连接回字符串。我认为这是一个简单的解决方案这是一段代码:

function reverse(str) {
  return str.split('').reverse().join('');
}

console.log(reverse('abc'));