js(javascript)的setTimeout为什么不等待就直接运行
代码如下:<inputtype="text"name="con"><script>varsta=1;functionst(){sta++;con.value=sta;se...
代码如下:
<input type="text" name="con">
<script>
var sta = 1;
function st(){
sta++;
con.value=sta;
setTimeout(st(),10000);
}
st();
</script>
结果不管我setTimeout后面写一万还是一百万还是一个亿,都是瞬间执行,如果整个代码运行,就是2500多次以后提示
---------------------------
Microsoft Internet Explorer
---------------------------
Out of memory at line: 7
---------------------------
确定
---------------------------
这个是为什么,是setTimeout大小写的问题么(我是写的只有Time的T大写) 展开
<input type="text" name="con">
<script>
var sta = 1;
function st(){
sta++;
con.value=sta;
setTimeout(st(),10000);
}
st();
</script>
结果不管我setTimeout后面写一万还是一百万还是一个亿,都是瞬间执行,如果整个代码运行,就是2500多次以后提示
---------------------------
Microsoft Internet Explorer
---------------------------
Out of memory at line: 7
---------------------------
确定
---------------------------
这个是为什么,是setTimeout大小写的问题么(我是写的只有Time的T大写) 展开
2个回答
展开全部
var sta = 1;要写在function里面,不要
追问
拜托,写在function里面,不是每次都又重新赋值了么。写在外面是全局变量,写在里面就是局部变量了。而且都不解决问题
追答
var sta = 1;
function st(){
sta++;
document.getElementById("con").value=sta;
setTimeout('st()',1000);
}
st();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询