[問題] Ajax定義請教?

看板Ajax作者 (henry)時間12年前 (2013/07/12 10:30), 編輯推噓6(606)
留言12則, 6人參與, 最新討論串1/1
各位好 因為本身沒有寫過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

07/12 11:24, , 1F
no js是 single thread
07/12 11:24, 1F

07/12 12:19, , 2F
不對喔,非同步指的是網頁可以局部更新,不用全網頁載入
07/12 12:19, 2F

07/12 13:52, , 3F
還是單一執行緒 只是把工作推遲而已 這中間可以去做別的事
07/12 13:52, 3F

07/12 19:17, , 4F
所以Ajax指的只是一種概念而不是某種語言還是特定寫法嗎
07/12 19:17, 4F

07/12 21:17, , 5F
ajax現在算概念了沒錯 基本上講ajax時重點不在非同步
07/12 21:17, 5F

07/12 21:17, , 6F
而在於 "以javascript去讀取網路資源回來現在的網頁"
07/12 21:17, 6F

07/12 21:18, , 7F
如果要講非同步概念 比較接近的是callback的利用
07/12 21:18, 7F

07/12 21:20, , 8F
現在的ajax大多數時候...load回來的都不是XML....
07/12 21:20, 8F

07/12 21:21, , 9F
ajax去讀json、html、plain text的機率要比xml多很多
07/12 21:21, 9F

07/12 21:52, , 10F
以前我也是XML派der 直到我膝蓋中了一箭...
07/12 21:52, 10F

07/16 13:41, , 11F
不對喔 ajax 可以同步亦可以非同步,無須下setTimeout
07/16 13:41, 11F

07/16 13:41, , 12F
才會執行指定的 function
07/16 13:41, 12F
文章代碼(AID): #1HtselX8 (Ajax)
文章代碼(AID): #1HtselX8 (Ajax)