论坛首页 Web前端技术论坛

不要乱用ajax中异步操作

浏览 40468 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-03-06  
ajax的第一个字母就代表异步,如果不用异步,就不能称之为ajax,也失去了ajax原来的意义。而且firefox也不支持连续的同步操作
0 请登录后投票
   发表时间:2007-03-07  
xwd 写道
ajax的第一个字母就代表异步,如果不用异步,就不能称之为ajax,也失去了ajax原来的意义。而且firefox也不支持连续的同步操作





阁下何时自己动手写了个firefox?

连续的同步操作 比较晦涩。
同步嘛,必须一个一个来,交叉执行就不算了。
阻塞当前线程,一个一个的同步加载资源,只要支持XMLHttpRequest的浏览器都能支持这个。

目前为止,很多需要动态装载脚本程序的框架也都是这样做的。
0 请登录后投票
   发表时间:2007-03-07  
jindw 写道

阁下何时自己动手写了个firefox?

连续的同步操作 比较晦涩。
同步嘛,必须一个一个来,交叉执行就不算了。
阻塞当前线程,一个一个的同步加载资源,只要支持XMLHttpRequest的浏览器都能支持这个。

目前为止,很多需要动态装载脚本程序的框架也都是这样做的。


如果不等上一个请求返回的结果,连续发n个XMLHttpRequest请求,firefox返回的是一个值,ie返回的是n个值。

当然等到上一个请求返回的值后再发下一个请求就不会出现这种情况,我没用什么框架,这是我自己写了几个例子得出的结果,如果有错误还请多指教
0 请登录后投票
   发表时间:2007-03-07  
xwd 写道


如果不等上一个请求返回的结果,连续发n个XMLHttpRequest请求,firefox返回的是一个值,ie返回的是n个值。

当然等到上一个请求返回的值后再发下一个请求就不会出现这种情况,我没用什么框架,这是我自己写了几个例子得出的结果,如果有错误还请多指教


我想问一下,JavaScript没有多线程,如何在同步方式下做到的同时发送多个请求???
0 请登录后投票
   发表时间:2007-03-08  
jindw 写道

我想问一下,JavaScript没有多线程,如何在同步方式下做到的同时发送多个请求???


不要曲解我的意思,不是同时发请求,是连续发,写个循环发呗

另外,javascript本身虽然不支持多线程,但是可以利用ActiveX的多线程功能实现,就是说在使用xmlhttp控件的时候是可以实现多线程的。
0 请登录后投票
   发表时间:2007-03-08  
xwd 写道
jindw 写道

我想问一下,JavaScript没有多线程,如何在同步方式下做到的同时发送多个请求???


不要曲解我的意思,不是同时发请求,是连续发,写个循环发呗

另外,javascript本身虽然不支持多线程,但是可以利用ActiveX的多线程功能实现,就是说在使用xmlhttp控件的时候是可以实现多线程的。



同步异步都分不清楚,你还是一边凉快去吧,不要回帖了。
0 请登录后投票
   发表时间:2007-03-08  
jindw 写道


同步异步都分不清楚,你还是一边凉快去吧,不要回帖了。


不明白你的意思,你清楚麻烦你解释一下
0 请登录后投票
   发表时间:2007-03-09  
我对这东西的感觉就是解决了页面刷新问题
0 请登录后投票
   发表时间:2007-03-09  
异步同步本身还是要看功能本身,以及响应速度问题
不可以简单断言哪个更好

在等待时间较长的情况下,同步会让浏览器陷于停滞状态

至于异步代码的复杂性,我也确实经历过,可程序员为此付出代价来交换软件的可用性是值得的
0 请登录后投票
   发表时间:2007-03-09  
http://ajaxian.com/archives/synchronous-calls-and-browser-freezes

都看看这篇论文。
还有
http://dev2dev.bea.com.cn/techdoc/20060607807.html
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics