php js 终止,怎样让js暂停执行

这次给大家带来怎样让js暂停执行,让js暂停执行的注意事项有哪些,下面就是实战案例,一起来看一下。

JavaScript是一门单线程但是可处理异步任务的脚本语言,是没有提供sleep等类似的方法的,当有需求需要暂停js脚本时,可以使用以下的方法 单线程分析

一:alert,comfirm弹窗暂停

js的alert,confirm弹窗类方法,是可以暂停js脚本执行的

例如:

console.log(1);

alert(1);

console.log(2);

e727e7354e5fe82627b03071518c5917.png

1bdffbaea857c2b9c66215cfcd5b6450.png

这样弹窗,是需要点击确认才会执行下面的语句的

就算是定时器也一样暂停

var i=0;

setInterval(function(){

console.log(i);

i++;

if(i==5){

alert(i);

}

},500)

6722e8f3dccfe794ffc681f271c22c39.png

eef4e01b9a20b2c3b92b6e4e5a3d41f4.png

所以,如果需要暂停的话,可以使用弹窗法暂停脚本,缺点是会影响用户体验

二:while();方法暂停

while方法可以暂停,但是会影响浏览器性能,并且不好控制

var i=0;

console.log(new Date());

while(i<5000000000){

i++;

}

console.log(new Date());

b23e5cee7a49fa6d16a23ae770aa2432.png

只要控制下while的判断条件,就可以实现暂停了

三,ajax同步请求方法

此方法需要服务器协作才能实现,本人不建议,因为懒,也懒得测试了,

大概步骤就是:ajax同步请求服务器,带上一个参数time,服务器接收之后,sleep(time),到时间再输出,回到ajax回调函数,在这个时间 内,ajax是停止状态的

最后再补充几句,其实js是不能暂停脚本的,上面的方法,只是抢占当前浏览器线程,相当于该线程的某个语句一直还停留在当前浏览器线程,

如:while,当前还未执行完while循环该方法,所以不能退出该线程

不让切换执行,所以实现了暂停

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值