Ajax同步和异步(Async and Sync)

本文介绍了Ajax同步和异步的概念。同步意味着在执行耗时操作时必须等待,而异步则允许在此期间进行其他任务。Ajax默认为异步,但可通过设置open()的第三个参数为true(异步)或false(同步)来改变。同步和异步的主要区别在于处理方式和浏览器警告,同步传输不被推荐使用。通过代码示例展示了同步和异步在响应事件上的差异。

概念:

同步:一个人在同一个时刻只能做一件事情,在执行一些耗时的操作(不需要看管)不去做别的事,只是等

异步:在执行一些耗时的操作(不需要看管)去做别的事,而不是等待


Ajax默认是异步的,但是我们可以通过修改open()的参数来改变是同步还是异步——第三个参数
open(,,true/false)

  • true 异步 默认值可不填
  • false 同步的
     那同步和异步的区别在哪里呢?虽然同步传输我们极小概率用到但是我们还是有必要了解一下

演示:

 我们用一段代码来演示效果 其中用到 time 这个方法让我们可以只直观的看到区别

<script>
	console.time('async');
	var xhrAsync=new XMLHttpRequest();
	xhrAsync.open('GET','time.php',true);
	xhrAsync.send();
	console.log(xhrAsync.responseText);//打印不到返回值
	console.timeEnd('async');
-----------------------------------------------------------------------------
	console.time('sync');
	var xhrSync=new XMLHttpRequest();
	xhrSync.open('GET','time.php',false);
	xhrSync.send();
	console.log(xhrSync.responseText);
	console.timeEnd('sync');
</script>

在这里插入图片描述
   我们可以看到同步和异步在响应事件上有这明显的差距,并且浏览器也有警告(Deprecation)强烈不建议使用同步传输的方式;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值