亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

while的死循環是怎么回事?為什么會進入死循環?

while的死循環是怎么回事?為什么會進入死循環?

慕桂英546537 2019-03-05 09:10:31
let status = true;while (status) {}console.log("沒有執行到這里");
查看完整描述

8 回答

?
12345678_0001

TA貢獻1802條經驗 獲得超5個贊

while(true) 當然是死循環了, 沒有為什么


查看完整回答
反對 回復 2019-03-26
?
富國滬深

TA貢獻1790條經驗 獲得超9個贊

while傳了個true進去,相當于一直在循環,沒有盡頭


查看完整回答
反對 回復 2019-03-26
?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

熊嘚、你這 status 都賦 true 值了

不死循環才怪嘞


查看完整回答
反對 回復 2019-03-26
?
慕尼黑5688855

TA貢獻1848條經驗 獲得超2個贊

你這個代碼執行流程


let status = true;


while (status) {   // 每次執行到這里 為true 執行{}里面代碼 直到為false的時候退出  而你的status一    直是true


}

...


查看完整回答
反對 回復 2019-03-26
?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

let status = true;


while (status) {


}

第一行,status為true啊,大佬。


查看完整回答
反對 回復 2019-03-26
?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

首先,編程語言里幾乎所有的程序控制關鍵字,包括判斷、循環之類的,其實全都是if的派生;換句話說,如果語言允許,它們都可以寫成if...的形式。

其次,回到問題上來。那么while就可以轉化為:


Label:

    If (xxx) {

        dosomething;

        Goto Label;

    }

這種形式。當然這不是javascript,因為它在設計的時候拿掉了goto、而只保留了label,所以你只要能看明白大概其意思就行。那么我們知道if (true)其實是沒有判斷作用的、一個“常通”的邏輯語句,那么這時,這段其實就變成了:


Label:

    dosomething;

    Goto Label;

沒有任何的控制,程序不斷在執行操作和跳轉到label段落之間往復,也就是:死循環。


查看完整回答
反對 回復 2019-03-26
?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

let status = true;


while (status) {


}

你在while內并沒有改變status的值,所以它一直是true,就會一直走到這里,形成死循環


查看完整回答
反對 回復 2019-03-26
  • 8 回答
  • 0 關注
  • 2590 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號