<!DOCTYPE HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函数</title>
<script type="text/javascript">
//定义函数
function compare(x,y)
//函数体,判断两个整数比较的三种情况
{
var sum;
if(x>y){
sum=x;
}
else if(x<y){
sum=y;
}else{
sum=x||sum=y;
}
return sum;
}
var add1=compare(5,4);
var add2=compare(6,3);
//调用函数,实现下面两组数中,返回较大值。
document.write(" 5 和 4 的较大值是:"+add1+"<br>");
document.write(" 6 和 3 的较大值是:"+add2);
</script>
</head>
<body>
</body>
</html>
sum=x||sum=y;
这一句是什么意思?是想表达2个数相等吗?那直接赋值为字符串就可以了。如:
sum="相等";
完整代码:
<!DOCTYPE HTML> <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>函数</title> <script type="text/javascript"> //定义函数 function compare(x,y) //函数体,判断两个整数比较的三种情况 { var sum; if(x>y){ sum=x; }else if(x<y){ sum=y; }else{ sum="相等"; } return sum; } var add1=compare(5,4); var add2=compare(6,3); //调用函数,实现下面两组数中,返回较大值。 document.write(" 5 和 4 的较大值是:"+add1+"<br>"); document.write(" 6 和 3 的较大值是:"+add2); </script> </head> <body> </body> </html>
我知道了,sum=x||sum=y;改成 (sum=x)||(sum=y);就可以了,因为逻辑运算符优先级高于赋值,哇哈哈!