报错Uncaught RangeError: Maximum call stack size exceeded

it2022-05-08  2

今天写了个简单的定时器,遇到了一个报错

错误定义:堆栈溢出,最大堆栈超过了最大值、 以下是错误代码

<script type="text/javascript"> var num=0,i; function startCount(){ document.getElementById('txt').value=num; num+=1; i=setTimeout(startCount(),1000) } function stopCount(){ clearTimeout(i) } </script> <input type="text" id="txt" /> <input type="button" onclick="startCount()" value="start"/> <input type="button" onclick="" value="stop"/>

报错截图: 效果截图(正常情况应该是每秒钟递增1个数值):

错误原因:没有给setTimeout()中的startCount()函数添加双引号,导致startCount()无法正常调用。

正确写法:setTimeout(startCount,1000) 或者setTimeout("startCount()",1000)


最新回复(0)