為什么我寫的代碼又運行不了,郁悶
<!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>
2016-01-09
這一句是什么意思?是想表達2個數相等嗎?那直接賦值為字符串就可以了。如:
完整代碼:
<!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>2016-01-09
我知道了,sum=x||sum=y;改成?(sum=x)||(sum=y);就可以了,因為邏輯運算符優先級高于賦值,哇哈哈!