用于循环的javascript赢得';迭代
这里是新手程序员,我正在尝试一个目标是向后打印字符串的练习。这是我的密码:用于循环的javascript赢得';迭代,javascript,for-loop,Javascript,For Loop,这里是新手程序员,我正在尝试一个目标是向后打印字符串的练习。这是我的密码: function firstReverse(str) { for(var i=str.length - 1; i >= 0;i --) { return(str[i]); } }; firstReverse("riyad"); 我一直得到字母“d”的返回,但不是整个字符串。不确定这里出了什么问题?请帮忙 您可以尝试以下方法: function firstReverse(str)
function firstReverse(str) {
for(var i=str.length - 1; i >= 0;i --) {
return(str[i]);
}
};
firstReverse("riyad");
我一直得到字母“d”的返回,但不是整个字符串。不确定这里出了什么问题?请帮忙 您可以尝试以下方法:
function firstReverse(str) {
for(var i=str.length - 1; i >= 0;i --) {
console.log(str[i]);
}
};
我一直得到字母“d”的返回,但不是整个字符串
获取此输出是合理的,因为代码第一次进入for语句时,它将由于return
语句而退出。换句话说,for语句将仅在第一步执行
函数firstReverse(str){
对于(变量i=str.length-1;i>=0;i--){
文件编写(str[i]);
}
};
第一反向(“里亚德”)代码>问题是,return语句会打断循环并返回它得到的第一个字母
如果要反转字符串,可以尝试将其转换为数组,将其反转,并将新数组的concat元素还原为字符串。我认为这是一个简单的解决办法。下面是一段代码:
功能反转(str){
返回str.split(“”).reverse().join(“”);
}
控制台日志(反向('abc'))代码>在第一次返回后,您离开了函数。当您执行return
时,该方法将被放弃,之后不会执行任何其他操作。您需要查看return
函数的功能。这是你问题的关键。是的,你的函数在第一次迭代中返回,所以你只能得到最后一个字母。不能有return语句,因为它会立即退出函数。将答案保存在一个变量中,然后在for循环后返回该变量。在学习过程中,您通常会这样做->“riyad”.split(“”).reverse().join(“”)
请不要鼓励初学者使用document.write()
。虽然它可能对测试程序有用,但由于各种原因,它很少能在真实网页中使用。@jfriend00当然。只是想让它在行动中。谢谢