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

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

連續更新 html 而不出現 javascript 中的最大調用堆棧大小錯誤的最佳方法是什么

連續更新 html 而不出現 javascript 中的最大調用堆棧大小錯誤的最佳方法是什么

慕蓋茨4494581 2023-09-11 15:18:00
我正在為朋友的網站編寫一個簡單的基于文本的游戲。我需要能夠更改 HTML 元素或更新 HTML 頁面,而不會遇到超出最大調用堆棧錯誤。我目前正在使用document.getElementById('console').innerHTML += "whatever"我需要一個沒有錯誤的方法這是加載的第一個函數。然后它會轉到prompt_input();功能。function title_screen(){    document.getElementById('console').innerHTML += '...'    quests.push('Getting Started');    prompt_input();}這就是提示輸入功能。它在運行適當的函數時接受用戶輸入。除了 restart() 之外的每個函數;函數返回到prompt_input();以獲得下一輪玩家的輸入。
查看完整描述

1 回答

?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

function prompt_input(){

  var action = document.getElementById("myInput").value;

  if (action == ""){

    prompt_input();

  }

  ...

這里有一個無限循環。


此條件之前的任何內容都不會使下一次調用時的條件發生變化:如果輸入value是"",那么它仍然是,并且您的代碼將繼續執行,直到達到最大調用堆棧。


我不太確定您期望這個遞歸調用做什么,但快速瀏覽一下,我想說您只需要在這種情況發生時提前退出:


function prompt_input(){

  var action = document.getElementById("myInput").value;

  if (action == ""){

    return; // early exit

  }

  ...


查看完整回答
反對 回復 2023-09-11
  • 1 回答
  • 0 關注
  • 83 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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