作者henry4343 (henry)
看板Ajax
标题[问题] Ajax定义请教?
时间Fri Jul 12 10:30:05 2013
各位好
因为本身没有写过Web应用 目前正在学习中
看到Ajax这个名词,查了一下之後大概知道他是什麽东西
希望厘清一些观念,看看Ajax这个东西跟我想的是不是一样
在网路上查到一些关於Ajax的定义是:
Asynchronous JavaScript XMLHttpRequest,简单说来就是非同步的 XMLHttpRequest。
如果我们是采用同步式的 XMLHttpRequest,整个页面必须等到 Server 传回资料之後,
才会继续处理
如果是非同步 (Asynchronous) 我们则可以 setTimeout (计时器)为例,
当执行了 setTimeout,不会有任何的等待时间、而会继续执行下面的程式码,
等待时间到後,才会执行指定的 function。如果我们采用非同步式的 XMLHttpRequest,
我们就不需要等待 Server 端传送资料完毕,使用者仍然可以在页面上继续动作。
这不就是一般的multi thread机制吗?
以app为例,会把处理资料的部份丢入另一个thread执行,然後等thread执行
完以後在显示在UI上,这样UI就不会卡死。
不知道这样解释对不对?
感谢各位回答了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.11.17.212
1F:→ braveslave:no js是 single thread 07/12 11:24
2F:推 csf0427:不对喔,非同步指的是网页可以局部更新,不用全网页载入 07/12 12:19
3F:推 s25g5d4:还是单一执行绪 只是把工作推迟而已 这中间可以去做别的事 07/12 13:52
4F:→ henry4343:所以Ajax指的只是一种概念而不是某种语言还是特定写法吗 07/12 19:17
5F:推 mrbigmouth:ajax现在算概念了没错 基本上讲ajax时重点不在非同步 07/12 21:17
6F:→ mrbigmouth:而在於 "以javascript去读取网路资源回来现在的网页" 07/12 21:17
7F:→ mrbigmouth:如果要讲非同步概念 比较接近的是callback的利用 07/12 21:18
8F:推 mrbigmouth:现在的ajax大多数时候...load回来的都不是XML.... 07/12 21:20
9F:→ mrbigmouth:ajax去读json、html、plain text的机率要比xml多很多 07/12 21:21
10F:推 s25g5d4:以前我也是XML派der 直到我膝盖中了一箭... 07/12 21:52
11F:推 pttnews:不对喔 ajax 可以同步亦可以非同步,无须下setTimeout 07/16 13:41
12F:→ pttnews:才会执行指定的 function 07/16 13:41