var i=setTimeout中的i为什么在函数中定义不起作用,要在函数外定义
var num=0;
function rec(){
document.getElementById("txt").value=num;
num+=1;
var i=setTimeout(rec,300);
}
setTimeout(rec,300);
</script>
</head>
<body>
<input type="text" id="txt">
<input type="button" value="stop" onclick="clearTimeout(i)"/>
这样不行
var num=0,i;
function rec(){
document.getElementById("txt").value=num;
num+=1;
i=setTimeout(rec,300);
}
setTimeout(rec,300);
</script>
</head>
<body>
<input type="text" id="txt">
<input type="button" value="stop" onclick="clearTimeout(i)"/>
这样就可以了,为什么