課程
/前端開發
/JavaScript
/JavaScript進階篇
我把while條件改為小于11,下面的也改為11,結果頁面崩潰為什么
2017-04-24
源自:JavaScript進階篇 7-16
正在回答
while(myarr.length<=10){? ? num=Math.round(Math.random()*10);? ? for(i=0;i<10;i++)? ?{? ? ? ?if(num==myarr[i]) ?//myarry里面是否存在這個數,如果存在則跳過for循環,重新生成一個隨機數? ? ? ?{break;}? ? ? ?if(i==myarr.length-1) //判斷是否是myarr數組中的最后一個數,且myarr中不存在這個數,? ? ?? ? ? ?{????????????????????????????????? ?? ? ? ? ? ?myarr[i+1]=num; ? ? ??//便在myarr中存放這個數? ? ? ? ? ?break;? ? ? ?}? ?}}
while(myarr.length<=10)
{
? ? num=Math.round(Math.random()*10);
? ? for(i=0;i<10;i++)
? ?{
? ? ? ?if(num==myarr[i]) ?//myarry里面是否存在這個數,如果存在則跳過for循環,重新生成一個隨機數
? ? ? ?{break;}
? ? ? ?if(i==myarr.length-1) //判斷是否是myarr數組中的最后一個數,且myarr中不存在這個數,? ? ?
? ? ? ?{????????????????????????????????? ?
? ? ? ? ? ?myarr[i+1]=num; ? ? ??//便在myarr中存放這個數
? ? ? ? ? ?break;
? ? ? ?}
? ?}
}
你通過上面的while已經將0-10的整數放入myarr里面了,
當你改成while(myarr.length<=11)時就變成了死循環,因為myarr里面的0-10只能存放唯一 一次,而myarr.length永遠定格在11這個值,而且永遠滿足while的循環條件,再也不能插入任何值。
你第7行代碼,var myarr=new Array(0);,聲明的數組myarr含有0個元素,系統沒有為它分配空間,后面你一直往里面放數據,肯定結果不對的??;還有你的第15行,邏輯好亂? 能不能問一下你是要實現什么效果呢
你可以測試一下,上面的改為11后,實際有多少個元素。
下面的索引應該是超限了。
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
3 回答為什么我這樣寫頁面崩潰了
3 回答為什么一運行就網頁崩潰
7 回答為什么我把for命令改成while運行瀏覽器就會崩潰?
8 回答頁面出現崩潰
2 回答輸入continue;之后頁面就崩潰了???
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-07-12
你通過上面的while已經將0-10的整數放入myarr里面了,
當你改成while(myarr.length<=11)時就變成了死循環,因為myarr里面的0-10只能存放唯一 一次,而myarr.length永遠定格在11這個值,而且永遠滿足while的循環條件,再也不能插入任何值。
2017-05-29
你第7行代碼,var myarr=new Array(0);,聲明的數組myarr含有0個元素,系統沒有為它分配空間,后面你一直往里面放數據,肯定結果不對的??;還有你的第15行,邏輯好亂? 能不能問一下你是要實現什么效果呢
2017-04-24
你可以測試一下,上面的改為11后,實際有多少個元素。
下面的索引應該是超限了。