为了账号安全,请及时绑定邮箱和手机立即绑定

请问为何打印出的结果是undefined?

请问为何打印出的结果是undefined?

retisan 2017-10-11 22:26:33
  var val = 1;  function t(num) {      if(num<5){          return val;      }else{          val+=1;          num-=1;          t(num)      }  }console.log(t(10));
查看完整描述

5 回答

?
FSYu

TA贡献152条经验 获得超59个赞

var val = 1;
 function t(num) {
     if(num<5){
         console.log(val);
     }else{
         val+=1;
         num-=1;
         t(num)
     }
 }
t(10);

你要的是这样的吗?

查看完整回答
1 反对 回复 2017-10-12
?
幽灵柯

TA贡献3条经验 获得超1个赞

var val = 1;

function t(num) {

     if(num < 5){     

     }else{

         val += 1;

         num -= 1;

         t(num);

     }   

      return val;    

}


查看完整回答
反对 回复 2018-09-30
?
IgNiz_

TA贡献5条经验 获得超6个赞

var val = 1;

function t(num) {
   if(num<5){
       return val;
   }else{
       val+=1;
       num-=1;
       t(num);
       return num;

   }
}
alert(t(10));


返回值都没有  你肯定undefined啊  return val 或者 return num 就有值了

查看完整回答
反对 回复 2017-10-12
?
落叶1111

TA贡献57条经验 获得超9个赞

没有返回值

查看完整回答
反对 回复 2017-10-12
?
Developer_Zuck

TA贡献112条经验 获得超42个赞

你的num这个变量没有申明吧?
应该在方法前申明:var num;

查看完整回答
反对 回复 2017-10-11
  • retisan
    retisan
    num是传进去的参数
  • Developer_Zuck
    Developer_Zuck
    你首先要申明: var val = 1; var num; function t(num) { if(num<5){ return val; }else{ val+=1; num-=1; t(num) } } console.log(t(10)); 你再试试。 我用手机查看的,所以也看不到效果。
  • 5 回答
  • 0 关注
  • 3125 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信