Javascript 为什么我的函数会返回未定义的字符串
为什么我的Javascript 为什么我的函数会返回未定义的字符串,javascript,Javascript,为什么我的函数会返回未定义的字符串和反向字符串 function revString(str) { var a,c; a=str.length-1; while(a>=0) { c = c + str[a]; a--; } return c; } console.log(revString("Google")); 我不确定它在哪里断裂。我知道同一个问题有很多答案,但我只想理解这里发生的错误 下面是小提琴 在函数开
函数
会返回未定义的字符串和反向字符串
function revString(str)
{
var a,c;
a=str.length-1;
while(a>=0)
{
c = c + str[a];
a--;
}
return c;
}
console.log(revString("Google"));
我不确定它在哪里断裂。我知道同一个问题有很多答案,但我只想理解这里发生的错误
下面是小提琴
在函数开始时,您没有将
c
赋值给任何对象,因此它将启动未定义的。您只需要给它一个初始值:
function revString(str)
{
var a,c='';
a=str.length-1;
while(a>=0)
{
c = c + str[a];
a--;
}
return c;
}
console.log(revString("Google"));
启动循环时,c
是未定义的
。您需要将其初始化为空字符串
将undefined
添加到第一个字符会将undefined
转换为字符串“undefined”
您需要初始化c
变量给c
一个初始值--var a,c='代码>第一次使用c=c+str[a]通过循环
,c
尚未给定值,因此其计算结果为c=undefined+'e'代码>使用调试器逐步检查代码。