JavaScript 框架和庫能夠說是開源項目中最龐大也是最累的類目了,目前在github 上這一類的項目是最多的,而且幾乎每隔一段時間就會出現一個新的項目席捲網絡社區,雖然這樣推進了創新的發展,但不得不說苦了前端的開發者們。所以本文羅列出了一些優秀的 Javascript 框架和庫的特及其在 github 上的 star 數,旨在爲各位開發者提供一些參考。html
一、ReactJS(Star: 59989,Fork: 10992)前端
主頁:瞭解更多vue
React.js(React)是一個用來構建用戶界面的 JavaScript 庫,主要用於構建UI,不少人認爲 React 是 MVC 中的 V(視圖)。React 起源於 Facebook 的內部項目,用來架設 Instagram 的網站,並於 2013 年 5 月開源。React 擁有較高的性能,代碼邏輯很是簡單,愈來愈多的人已開始關注和使用它。react
React 特色:jquery
1.聲明式設計−React採用聲明範式,能夠輕鬆描述應用。git
2.高效−React經過對DOM的模擬,最大限度地減小與DOM的交互。angularjs
3.靈活−React能夠與已知的庫或框架很好地配合。github
4.JSX− JSX 是 JavaScript 語法的擴展。React 開發不必定使用 JSX ,但咱們建議使用它。瀏覽器
5.組件− 經過 React 構建組件,使得代碼更加容易獲得複用,可以很好的應用在大項目的開發中。前端框架
6.單向響應的數據流− React 實現了單向響應的數據流,從而減小了重複代碼,這也是它爲何比傳統數據綁定更簡單。
二、AngularJS(Star: 54769,Fork: 27292)
Angular JS (Angular.JS) 是一組用來開發 Web 頁面的框架、模板以及數據綁定和豐富 UI 組件。它支持整個開發進程,提供 Web 應用的架構,無需進行手工 DOM 操做。 AngularJS 很小,只有 60K,兼容主流瀏覽器,與 jQuery 配合良好。
三、Vue.js(Star: 43608, Fork: 5493)
Vue.js 是構建 Web 界面的 JavaScript 庫,提供數據驅動的組件,還有簡單靈活的 API,使得 MVVM 更簡單。
主要特性:
●可擴展的數據綁定
●將普通的 JS 對象做爲 model
●簡潔明瞭的 API
●組件化 UI 構建
●配合別的庫使用
四、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、實現動畫效果,而且方便地爲網站提供AJAX交互。jQuery還有一個比較大的優點是,它的文檔說明很全,並且各類 應用也說得很詳細,同時還有許多成熟的插件可供選擇。jQuery可以使用戶的html頁保持代碼和html內容分離,也就是說,不用再在html裏面插入一堆js來調用命令了,只需定義id便可。
五、Meteor(Star: 36691,Fork: 4617)
Meteor 是一組新的技術用於構建高質量的 Web 應用,提供不少現成的包,可直接在瀏覽器或者雲平臺中運行。
六、Angular2(Star:20803,Fork:5367)
Angular 是一款十分流行且好用的 Web 前端框架,目前由 Google 維護。這個條目收錄的是 Angular 2 及其後面的版本。因爲官方已將 Angular 2 和以前的版本Angular.js分開維護(二者的 GitHub 地址和項目主頁皆不相同),因此就有了這個頁面。
七、Ember.js(Star: 17540,Fork: 3646)
Ember是一個雄心勃勃的Web應用程序,消除了樣板,並提供了一個標準的應用程序架構的JavaScript框架。
八、Polymer(Star:16979,Fork: 1699)
主頁:http://www.polymer-project.org
在2013年的Google I/O大會上,Google發佈了Polymer,它是一個使用Web組件構建Web應用的類庫,同時也使用了爲Web構建可重用組件的新的HTML 5標準。Polymer爲大部分Web組件技術提供了polyfills功能,它能讓開發者在全部的瀏覽器支持新特性前建立本身的可重用組件。此外,Polymer提供了一系列的部件的例子,其中包括天氣、時鐘、股票行情和線型圖。
Polymer中的polyfills爲須要使用Web組件成功構建應用提供了多種Web技術,包括:
●HTML imports:種在其餘HTML document中引入和重用HTML document的方法。
●自定義元素:讓開發者定義和使用自定義DOM元素。
●Shadow DOM:在DOM中提供的封裝。
●模型驅動視圖(Model Driven Views):提供象AngularJS的數據綁定。
●Web動畫:實現複雜動畫的API。
●Pointer事件:對鼠標觸摸和手寫筆事件的封裝
九、Zepto.js(Star: 12074,Fork: 3260)
主頁:https://facebook.github.io/react
Zepto.js 是支持移動WebKit瀏覽器的JavaScript框架,具備與jQuery兼容的語法。2-5k的庫,經過不錯的API處理絕大多數的基本工做。
十、Riot.js(Star: 11491,Fork: 902)
Riot.js是一個客戶端模型-視圖-呈現(MVP)框架而且它很是輕量級甚至小於1kb.儘管他的大小使人難以置信,全部它能構建的有以下:一個模板引擎,路由,甚至是庫和一個嚴格的並具備組織的MVP模式。當模型數據變化時視圖也會自動更新。
固然除了以上提到的這些,還有不少優秀的 Javascript 框架和庫,而且幾乎每隔一段時間就會涌現一個新的產品。