Java Script,返回打印值

时间:2016-02-14 23:30:00

标签: javascript

我正在尝试返回打印语句。我提出的每一个代码似乎都是错的。不是Java Script的专家。

它是一个青蛙跳跃计划

如果青蛙无法到达目的地,我希望它返回一句话,说“青蛙无法到达目的地” 如果青蛙可以到达终点,我希望它显示跳数

Obj = {0:1,1:3,2:6,3:4,4:5,5:0,6:2,7:-1};
D=3;
X=0;
Y=7;

function frogHop(obj, D,X,Y)
 {
   var arr=[];
   for(var key in obj){
     arr[key]=obj[key];

   }


   var now=X;
   var hops=0;
   var hopped=[];
   flag=1;
   while (Math.abs(now-Y)>D)
   {
     hopped.push(now);
     now=arr[now];
     if (hopped.indexOf(now)!=-1)
     {
       flag=0;
       break;
     }
     hops+=1;
   }
   if (flag==1)
   {
     if (now==Y)
       return hops;
     else
       return hops+1;
   }

   return -1;
   print("Cannot reach destination")

}

alert(frogHop(Obj,D, X,Y)); 

1 个答案:

答案 0 :(得分:0)

尝试将答案作为字符串

返回
Obj = {0:1,1:3,2:6,3:4,4:5,5:0,6:2,7:-1};
D=3;
X=0;
Y=7;

function frogHop(obj, D,X,Y)
 {
   var arr=[];
   for(var key in obj){
     arr[key]=obj[key];

   }


   var now=X;
   var hops=0;
   var hopped=[];
   flag=1;
   while (Math.abs(now-Y)>D)
   {
     hopped.push(now);
     now=arr[now];
     if (hopped.indexOf(now)!=-1)
     {
       flag=0;
       break;
     }
     hops+=1;
   }
   if (flag==1)
   {
     if (now==Y)
       return "The amount of hops was " + hops;
     else
       hops++;
       return "The amount of hops was " + hops;
   }

   return "Cannot reach destination";

}

alert(frogHop(Obj,D, X,Y));