问答详情
源自:5-6 编程练习

为什么找不出错误

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>函数</title>


<script type="text/javascript">

var a,b;

var txt="";

function message(){

try{//定义函数

    function bj(a,b){

       if(a>b)

         {return a;}

         else if(a==b)

             {document.write("相等");}

             else (a<b)

             { return b;}

                }

                

                }

catch(err){

    txt="本页有一个错误。\n\n";

  txt+="错误描述:" + err.message + "\n\n";

  txt+="点击确定继续。\n\n";

  alert(txt);

}

}

document.write(" 5 和 4 的较大值是:"+bj(5,4)+"<br>");

  document.write(" 6 和 3 的较大值是:"+bj(6,3)); 

  

</script>

</head>

<body>

</body>

</html>


提问者:慕粉4296528 2016-11-21 11:32

个回答

  • 神灯君3598408
    2016-11-21 12:38:31
    已采纳

    var a,b;

    var txt="";

    function message(a,b){

    try{//定义函数

        function bj(num1,num2){

           if(num1>num2){

            return num1;

           }else if(num1==num2){

            document.write("相等");

           }else {

            return num2;

           }

             } 

          return bj(a,b);

           }

    catch(err){

      txt="本页有一个错误。\n\n";

      txt+="错误描述:" + err.message + "\n\n";

      txt+="点击确定继续。\n\n";

      alert(txt);

    }

    }

    document.write(" 5 和 4 的较大值是:"+message(5,4)+"<br>");

      document.write(" 6 和 3 的较大值是:"+message(6,3)); 

      

    问题很多,挨个回答。。

    1、a和b是用来穿参数的,并不需要定义。可以省略

    2、if else语句中,else是直接跟大括号的。

    3、你的bj是在message中建立的,所以外部没办法访问这个函数,只能通过message函数来访问bj传递参数。

    4、如果使用message调用函数,那么问题又来了,你只是在message中定义了bj函数,并没有调用。所以bj函数不会运行。

    5、如果上面的问题都解决了。你还需要在message函数中将bj函数的返回值再返回给外面。

    大概就是这么多了。。

  • qq_缔造者_03554660
    2016-11-21 13:25:04

    <!DOCTYPE  HTML>

    <html >

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>函数</title>


    <script type="text/javascript">

    var a,b;

    var txt="";

    function message(a,b){

    try{//定义函数

       function bj(){

          if(a>b){

          return a;

          }else if(a==b){

          document.write("相等");

          }else{

          return b;

          }

       }

       return bj();

                   

    }

    catch(err){

      txt="本页有一个错误。\n\n";

      txt+="错误描述:" + err.message + "\n\n";

    txt+="点击确定继续。\n\n";

      alert(txt);

    }

    }

    document.write(" 5 和 4 的较大值是:"+message(5,4)+"<br>");

    document.write(" 6 和 3 的较大值是:"+message(6,3)); 

      

    </script>

    </head>

    <body>

    </body>

    </html>