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

请问当我的全局变量和函数的返回值名称一样时,为什么全局的变量得到的永远是最后一次函数执行的返回值

<!DOCTYPE  HTML>

<html >

<head>

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

<title>函数</title>


<script type="text/javascript">


//定义函数

function max2(x,y)

             {

              if(x>y)  

              {result = x}

              else {result = y} 

              return result

             }

var result = max2(5,4)

var result1 = max2(6,3)


//函数体,判断两个整数比较的三种情况




 

//调用函数,实现下面两组数中,返回较大值。

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

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





</script>

</head>

<body>

</body>

</html>


正在回答

1 回答

首先你的判断条件中,缺少两个参数相等的情况

其次你的返回值有问题,这是一个比较大小的判断,返回值应该是你传入参数中的其中一个,而不是返回计算结果

function compare(a,b) {

                if (a<b) {

                    return b;

                } else if (a==b) {

                    return a||b;

                } else {

                    return a;

                }

            }

        

        

        

            //函数体,判断两个整数比较的三种情况

        

        

        

         

            //调用函数,实现下面两组数中,返回较大值。

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

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


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468191    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

请问当我的全局变量和函数的返回值名称一样时,为什么全局的变量得到的永远是最后一次函数执行的返回值

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信