continue到底能不能在while里用? 這簡直是個懸疑故事
var?myscore=[100,89,57,91],i=0; ?????while(i<myscore.length) ????{ ????????if(myscore[i]<60) ????????{ ?????????????document.write("成績不及格,不輸出!"+"<br/>"); ?????????????continue; ????????} ????????document.write("成績:"+myscore[i]+"及格,輸出!"+"<br>"); ????????i++; ????}
上面這樣寫,包括do...while,就死機了。
那問題來了,這里面到底哪里不對? 看以前的問答里有人說在while里i++要放到if前面,屁,那就從89開始了,最后還來個undefined。?? 求個真大腿來簡單易俗的講解下為什么while不行?還能不能行? for為什么行??? 謝謝
下面這樣寫,就沒毛病。
?var?myscore=[100,89,57,91]//定義數組mynum并賦值 ?var?i; ?for(i=0;i<myscore.length;i++) ?{ ??????if(myscore[i]<60) ????{ ????document.write("成績不及格,不輸出!"+"<br>"); ????continue; ????} ????document.write("成績:"+myscore[i]+"及格,輸出!"+"<br>"); }
2016-12-25
2016-12-22
執行到continue后,i的值沒有增加,永遠等于2,myscore[i]=57,所以就陷入了死循環。