angular.js - AngularJS 比 jQuery 強大嗎?強大在哪
PHP中文网
PHP中文网 2017-05-15 16:57:55
0
13
1364

如果說 AngularJS 比 jQuery 強大,強大在哪裡?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回覆(13)
阿神

以上回到顯然不合理,可能是沒有用過ng,ng比jq強大的地方主要是:

jquery修改元素是透過手動操作dom,ng修改了資料就自動同步到dom
例如有一個列表要展現:

<ul ng-repeat="i in list"><li>{{i}}</li></ul>

ng代碼:$scope.list = [1,2,3], 修改list $scope.list[2] = 4
dom的ul第3個li就自動變成4了

而jq,程式碼大概需要:

list[2] = 4
$('ul').html('')
$.each(list, function(i,v){ $('ul').append('....') })

說穿了就是ng執行要把資料修改了html就自動變了,jq的話修改資料了還要自己修改html
而且,ng中,html(例如表單的input的value)變了後,資料自動變了,而jq還需要var data = $('input').val();

這叫資料的雙向綁定。

當然ng只適合單頁應用,不利於seo,這是另外的事

刘奇

這是兩個完全不同理念的東西,沒有可比性。

滿天的星座

首先這兩者可比較性不大,jquery的重點在於提供了多樣的元素選擇以及選出元素的各類方法提供,幫助開發者快速進行頁面開發。但從本質上來說,並不是程序框架性質的框架。而且,選擇器角度也可以很多直接用原生去實現,而angular更在於其數據和頁面的自動綁定所能帶來的開發便利,更符合頁面相對交互不多,更多中心在於數據呈現的場景下使用。
所以lz要比較其實應該比較的是backbone和angular這兩個。

滿天的星座

我之前花很長時間寫的一個 Markdown 編輯器中的大部分程式碼,其實只是實作了 AngularJS 的一點皮毛;而 jQuery 的許多功能我都很快地自己寫了實作。

讀過 jQuery 核心的程式碼,感覺 jQuery 提供的是一種書寫風格,而 AngularJS 才是真正強大的難以自己實現的,JS 所缺少的一角,打開了一種全新的思路。

當然,jQuery 和 AngularJS 專注的地方本來就不一樣,在各自領域都有各自的應用。
只是論自己實現的難度,AngularJS 大於 jQuery。

jQuery 專注於程式碼,AngularJS 專注於架構和功能。

Reference: http://damoqiongqiu.iteye.com/blog/1926475 https://angularjs.org/
http://jquery.com/

phpcn_u1582

從功能上來說這兩個東西根本沒有可比性。
如果從整個程式碼的寫法來看,我感覺jquery寫的更優美。但其實這個沒有絕對,畢竟每個人都不同。

左手右手慢动作

真的是沒有可比性,jQuery只是一個操作DOM的類別函式庫而已,而AngularJS是是MVC(或MVVM)框架。
AngularJS實作了讓View和資料完全分離,提供的資料雙向綁定功能只要修改資料就時時同步了View,基本上不用手動操作DOM。
當然AngularJS除了資料雙向綁定功能外,還提供了 路由、服務、過濾器、模板、指令、模組管理、依賴注入、單元測試等功能。

不知道這樣說了以後你是否有直覺的了解2者之間的區別了。

Ty80

這個問題好比在問錘子比螺絲起子強嗎,強大在哪裡?
不同的理念,誰也代替不了誰,真的談不上誰比較強大,看需求選擇使用哪一個,都是很好用的工具。

有人拿jqueryui跟angularjs比較,覺得好傻


Angular是整體開發的框架模式,不管是什麼樣的框架在具體實現時需要有利的工具輔助實現,而此時jquery發揮巨大的工具作用,是一把非常好用的瑞士軍刀,哈哈,所以也叫鋒利的jquery,Angular是框架和jquery負責不同層面的工作,Angular的數據DOM的雙向綁定比較弱,當然,也有很多人認為這很強大,因為這特性在弱結構弱交互頁面中確實很便利,在複雜的結構強交互的頁面中,Angular的這個綁定特性的優勢也立刻成了沒什麼用的雞肋。這兩者沒有任何衝突,以我的工作來比方,把Angular理解為房屋的建築結構有框架結構框剪結構有磚混結構,把jquery理解為房屋的裝修樣式,有歐式,現代,東南亞風格,現在明白了吧,兩者是獨立的不存在衝突更不存在有什麼選擇的比較。

仅有的幸福

一個是MVC框架,一個是函式庫。一個外在的體現了設計思想,一個簡化並強化了原生的js。我們也可以用jq實作自己的框架。所以沒有可比性。

大家讲道理

AngularJS很成功地在團隊成員JS能力不足的情況下,
讓Java開發人員把這部分較好地寫起來了。

好的前端程式設計師,會盡可能的把前後端資料互動操作進行分離,前端程式設計師只需要每個頁面提供一鍵傻瓜式js 方法,後端只需按照資料模版返回固定格式資料後呼叫即可( )

js 能力不足 ,以及對 dom 操作不熟練的程式設計師 ,則需要AngularJS 這種效率低下 ,貌似易用的框架

所以說白了,AngularJS 是給js 能力不足,嚴重依賴框架的java程式設計師用的蹩腳方案
AngularJS 是一個重量級的前端框架,也就是說很吃性能,適合對頁面性能交互要求不高的地方;

總結:不懂前端的程式設計師,總是想把後端思想帶進 前端, 前後不分,AngularJS 是提供給前端技術思想不好的程式設計師的妥協方案

淡淡烟草味

比較就比較,有什麼愚蠢不愚蠢的,太多維度可以做比較了,多少程式設計師從熟悉jQuery到新學習angular,這個過程必然經歷兩者的比較。本身就是很多趨勢,越來越多人用angular取代了jquery,或許就能說明誰強大,雖然我比較喜歡jQuery。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板