十大熱門的JavaScript框架和庫
JavaScript 框架和庫可以說是開源項目中最龐大也是最累的類目了,目前在github 上這一類的項目是最多的,并且?guī)缀趺扛粢欢螘r間就會出現(xiàn)一個新的項目席卷網(wǎng)絡(luò)社區(qū),雖然這樣推動了創(chuàng)新的發(fā)展,但不得不說苦了前端的開發(fā)者們。因此本文羅列出了一些優(yōu)秀的 Javascript 框架和庫的特及其在 github 上的 star 數(shù),旨在為各位開發(fā)者提供一些參考。
1、ReactJS(Star: 59989,Fork: 10992)
主頁:https://facebook.github.io/react
React.js(React)是一個用來構(gòu)建用戶界面的 JavaScript 庫,主要用于構(gòu)建UI,很多人認(rèn)為 React 是 MVC 中的 V(視圖)。React 起源于 Facebook 的內(nèi)部項目,用來架設(shè) Instagram 的網(wǎng)站,并于 2013 年 5 月開源。React 擁有較高的性能,代碼邏輯非常簡單,越來越多的人已開始關(guān)注和使用它。
React 特點:
1.聲明式設(shè)計−React采用聲明范式,可以輕松描述應(yīng)用。
2.高效−React通過對DOM的模擬,最大限度地減少與DOM的交互。
3.靈活−React可以與已知的庫或框架很好地配合。
4.JSX− JSX 是 JavaScript 語法的擴展。React 開發(fā)不一定使用 JSX ,但我們建議使用它。
5.組件− 通過 React 構(gòu)建組件,使得代碼更加容易得到復(fù)用,能夠很好的應(yīng)用在大項目的開發(fā)中。
6.單向響應(yīng)的數(shù)據(jù)流− React 實現(xiàn)了單向響應(yīng)的數(shù)據(jù)流,從而減少了重復(fù)代碼,這也是它為什么比傳統(tǒng)數(shù)據(jù)綁定更簡單。
2、AngularJS(Star: 54769,Fork: 27292)
Angular JS (Angular.JS) 是一組用來開發(fā) Web 頁面的框架、模板以及數(shù)據(jù)綁定和豐富 UI 組件。它支持整個開發(fā)進程,提供 Web 應(yīng)用的架構(gòu),無需進行手工 DOM 操作。 AngularJS 很小,只有 60K,兼容主流瀏覽器,與 jQuery 配合良好。
3、Vue.js(Star: 43608, Fork: 5493)
Vue.js 是構(gòu)建 Web 界面的 JavaScript 庫,提供數(shù)據(jù)驅(qū)動的組件,還有簡單靈活的 API,使得 MVVM 更簡單。
主要特性:
●可擴展的數(shù)據(jù)綁定
●將普通的 JS 對象作為 model
●簡潔明了的 API
●組件化 UI 構(gòu)建
●配合別的庫使用
4、jQuery(Star: 43432, Fork: 12117)
JQuery 是輕量級的js庫(壓縮后只有21k) ,它兼容CSS3,還兼容各種瀏覽器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用戶能更方便地處理HTML documents、events、實現(xiàn)動畫效果,并且方便地為網(wǎng)站提供AJAX交互。jQuery還有一個比較大的優(yōu)勢是,它的文檔說明很全,而且各種 應(yīng)用也說得很詳細(xì),同時還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁保持代碼和html內(nèi)容分離,也就是說,不用再在html里面插入一堆js來調(diào)用命令了,只需定義id即可。
5、Meteor(Star: 36691,Fork: 4617)
Meteor 是一組新的技術(shù)用于構(gòu)建高質(zhì)量的 Web 應(yīng)用,提供很多現(xiàn)成的包,可直接在瀏覽器或者云平臺中運行。
6、Angular2(Star:20803,F(xiàn)ork:5367)
Angular 是一款十分流行且好用的 Web 前端框架,目前由 Google 維護。這個條目收錄的是 Angular 2 及其后面的版本。由于官方已將 Angular 2 和之前的版本Angular.js分開維護(兩者的 GitHub 地址和項目主頁皆不相同),所以就有了這個頁面。
7、Ember.js(Star: 17540,Fork: 3646)
Ember是一個雄心勃勃的Web應(yīng)用程序,消除了樣板,并提供了一個標(biāo)準(zhǔn)的應(yīng)用程序架構(gòu)的JavaScript框架。
8、Polymer(Star:16979,Fork: 1699)
主頁:http://www.polymer-project.org
在2013年的Google I/O大會上,Google發(fā)布了Polymer,它是一個使用Web組件構(gòu)建Web應(yīng)用的類庫,同時也使用了為Web構(gòu)建可重用組件的新的HTML 5標(biāo)準(zhǔn)。Polymer為大部分Web組件技術(shù)提供了polyfills功能,它能讓開發(fā)者在所有的瀏覽器支持新特性前創(chuàng)建自己的可重用組件。此外,Polymer提供了一系列的部件的例子,其中包括天氣、時鐘、股票行情和線型圖。
Polymer中的polyfills為需要使用Web組件成功構(gòu)建應(yīng)用提供了多種Web技術(shù),包括:
●HTML imports:種在其他HTML document中引入和重用HTML document的方法。
●自定義元素:讓開發(fā)者定義和使用自定義DOM元素。
●Shadow DOM:在DOM中提供的封裝。
●模型驅(qū)動視圖(Model Driven Views):提供象AngularJS的數(shù)據(jù)綁定。
●Web動畫:實現(xiàn)復(fù)雜動畫的API。
●Pointer事件:對鼠標(biāo)觸摸和手寫筆事件的封裝
9、Zepto.js(Star: 12074,F(xiàn)ork: 3260)
主頁:https://facebook.github.io/react
Zepto.js 是支持移動WebKit瀏覽器的JavaScript框架,具有與jQuery兼容的語法。2-5k的庫,通過不錯的API處理絕大多數(shù)的基本工作。
10、Riot.js(Star: 11491,F(xiàn)ork: 902)
Riot.js是一個客戶端模型-視圖-呈現(xiàn)(MVP)框架并且它非常輕量級甚至小于1kb.盡管他的大小令人難以置信,所有它能構(gòu)建的有如下:一個模板引擎,路由,甚至是庫和一個嚴(yán)格的并具有組織的MVP模式。當(dāng)模型數(shù)據(jù)變化時視圖也會自動更新。
當(dāng)然除了以上提到的這些,還有很多優(yōu)秀的 Javascript 框架和庫,并且?guī)缀趺扛粢欢螘r間就會涌現(xiàn)一個新的產(chǎn)品。
相關(guān)文章
js 復(fù)制或插入Html的實現(xiàn)方法小結(jié)
很多情況下是用innerHTML或innerText,現(xiàn)在比較流行直接的dom操作,大家可以根據(jù)需要選擇。2010-05-05javascript appendChild,innerHTML,join性能比較代碼
在實際應(yīng)用中,應(yīng)該避免直接用innerHTML,對于大量的字符連接運算,應(yīng)該考慮先運算再輸出。2009-08-08