W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
Angularjs和jQuery是當(dāng)前兩個(gè)比較好用的前端開發(fā)工具,下面就簡單來說說這兩者之間的區(qū)別吧。
概念不同:
從概念上看,Angularjs屬于前端框架,我們寫的代碼都被其調(diào)用;而jQuery則是一個(gè)封裝了很多功能的庫,我們需要調(diào)用jQuery中的API去實(shí)現(xiàn)一些功能。
開發(fā)模式存在差異
AngularJS與jQuery在web應(yīng)用開發(fā)模式上有著完全不同的思路:
jQuery:通過顯示操作瀏覽器中的DOM來創(chuàng)建應(yīng)用程序(適合回合式應(yīng)用),對于比較大型且復(fù)雜項(xiàng)目,jQuery不利于全面的單元測試;
AngularJS:將瀏覽器吸收為應(yīng)用程序的基礎(chǔ)(適合單頁應(yīng)用),比較適合大型及復(fù)雜項(xiàng)目,對于全面的單元測試也相對比較容易。
什么是會和應(yīng)用和單頁應(yīng)用?
回合式應(yīng)用
在Web應(yīng)用發(fā)展剛起步時(shí),很多開發(fā)者都用的是回合式應(yīng)用。
相較于單頁應(yīng)用,它就相當(dāng)于多頁應(yīng)用吧。
優(yōu)點(diǎn):對瀏覽器的要求少,對客戶端的支持比較大;
缺點(diǎn):加載等待時(shí)間較長,在每次請求加載時(shí),它需要后端服務(wù)器來處理所有請求并管理所有的應(yīng)用程序狀態(tài),這就占用了許多帶寬。(這時(shí)因?yàn)槊總€(gè)HTML文檔必須是自包含的,也就是每次更新頁面,都要把HTML文檔中更新的和未更新的內(nèi)容完整的發(fā)送給服務(wù)器端,這就導(dǎo)致從服務(wù)器產(chǎn)生的每個(gè)響應(yīng)中包含許多相同的內(nèi)容)。
單頁應(yīng)用
該模式下只有一個(gè)初始的HTML文檔被發(fā)送給瀏覽器,用戶交互所產(chǎn)生的Ajax(異步)請求只會請求較小的HTML片段,或者要插入到已有的顯示給用戶元素中的數(shù)據(jù)。
而初始的HTML文檔不會被再次加載或者替換,這就造成了Ajax請求被異步執(zhí)行的同時(shí),用戶還可以繼續(xù)與已有的HTML進(jìn)行交互,而無需等待。
優(yōu)點(diǎn): 減少向后端請求的數(shù)據(jù)量,減少了帶寬壓力,提升了整體web的性能。
缺點(diǎn):對瀏覽器的性能的要求變高,某些瀏覽器可能會存在不兼容。
AngularJS與jQuery的適用領(lǐng)域
上圖很明確地闡述了AngularJS與jQuery的區(qū)別:
在項(xiàng)目復(fù)雜度比較低時(shí),比較適合使用jQuery框架,而隨著項(xiàng)目復(fù)雜度的提升,jQuery框架會被逐漸被以單頁應(yīng)用和復(fù)雜的回合式應(yīng)用見長的AngularJS框架所取代。
推薦閱讀;
jQuery微課——理論實(shí)踐一把抓
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: