不是很理解,小節(jié)里面當(dāng)值為5時候是完全不輸出“數(shù)值:5“的,但是中間代碼成績?yōu)?0的時候右邊還是輸出了"成績50不及格,不用循環(huán)了",為什么還是會輸出呢?
//代碼出自JavaScript進階篇 4-8
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>break</title>
<script type="text/JavaScript">
var mynum =new Array(70,80,66,90,50,100,89);//定義數(shù)組mynum并賦值
var i=0;
while(i<mynum.length)
{
? if(mynum[i]<60)
? ?{
? ? document.write("成績"+mynum[i]+"不及格,不用循環(huán)了"+"<br>");
? ? break;
? ?}
? document.write("成績:"+mynum[i]+"及格,繼續(xù)循環(huán)"+"<br>");
? i=i+1;
??
}
</script>
</head>
<body>
</body>
</html>
2015-04-04
你得注意break在什么位置,小節(jié)里break是在document.write之前,所以沒輸出就跳出了循環(huán);而練習(xí)里面是在document.write之后,則是在輸出之后才跳出循環(huán)的。
2015-07-24
因為?document.write("成績:"+mynum[i]+"及格,繼續(xù)循環(huán)"+"<br>");不是if,else的句式,他不是選擇的語句,而是運行了if的語句后接著向下運行,所以50運行了兩次。不知道你問的是不是這個
2015-04-03
不太明白你什么意思,但是我可以給你說一下代碼的運行過程。你所用的循環(huán)為while循環(huán),就是當(dāng)如果滿足條件時則一直循環(huán)。而在循環(huán)當(dāng)中有一個判斷,如果滿足判斷中的條件的話,則執(zhí)行if語句里面的代碼塊,至于你說的為什么5不輸出而50就輸出,這個不太懂,因為不管是5也好還是50也好,都是小于60的,都會執(zhí)行
document.write("成績"+mynum[i]+"不及格,不用循環(huán)了"+"<br>");
? ? break;
這兩句話,然后跳出循環(huán)