我们都知道java、c#、vb等语言都有sleep暂停的函数,而JavaScript脚本没有类似的功能。
下面就是我的实现的方法:
代码
function test()
{
var s = " javascript--暂停函数 " ;
setTimeout(
function (){
eval(sleep(test)); // 执行return之后的代码,也就是“alert(s);”
},
2000
); // 两秒后执行
return ; // 运行到这就退出
alert(s);
}
function sleep(func)
{
if (func == null )
{
return ;
}
var reg = / [\n\r] / g;
var funcStr = func.toString().replace(reg, '' ); // 替换回车和换行符
reg = / .+?sleep.+?return; / ;
funcStr = ' { ' + funcStr.replace(reg, '' ); // 去掉函数test,return之前的代码
return funcStr;
}
test();
function test()
{
var s = " javascript--暂停函数 " ;
setTimeout(
function (){
eval(sleep(test)); // 执行return之后的代码,也就是“alert(s);”
},
2000
); // 两秒后执行
return ; // 运行到这就退出
alert(s);
}
function sleep(func)
{
if (func == null )
{
return ;
}
var reg = / [\n\r] / g;
var funcStr = func.toString().replace(reg, '' ); // 替换回车和换行符
reg = / .+?sleep.+?return; / ;
funcStr = ' { ' + funcStr.replace(reg, '' ); // 去掉函数test,return之前的代码
return funcStr;
}
test();
这个可能有一些局限性,无法像java、C#中的sleep函数那样直观,好用。
但我觉得还蛮有趣的,就拿出来跟大家分享下。
