澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

库和工具,工具及其使用

2019-11-10 作者:澳门新萄京赌场网址   |   浏览(174)

精品的 JavaScript 前端框架、库和工具

2015/12/22 · JavaScript · 1 评论 · 工具, 库, 框架

本文由 伯乐在线 - cucr 翻译,Heiye 校稿。未经许可,禁绝转载!
匈牙利(Magyarország卡塔尔语出处:Rami Sayar。接待加入翻译组。

犹如大概每间距一周就有二个新的 JavaScript 库在网络社区挑起暴风!互连网社区进而充满活力,各类化且在四个地点十分的快腾飞。考察每二个主流的 JavaScript 框架和库是不容许完毕的壮举。由此,作者将分享部分前端开荒中最著名和最有影响力的框架和库。让大家看看最好的 JavaScript web 前端框架,库和工具甚至曾几何时使用它们。

另外:

  • 假使本人并未有满含你最开心的 JavaScript 框架,请不要上火。
  • 长久难忘持续更新您的框架和库。最新版本的框架和库平常具备最佳的跨浏览器和跨设备的支撑。你能够行使工具, 比如scanner 来扶植判别三个旧版本是不是协作这一大批判设备。

好了,让大家进来列表!

  那篇小说首要描述至今风靡的一些 Javascript web 前端框架,库以致它们的适用项景。

正文来源于:葡萄干城控件才干公司博客

与开采者数量相比较,也是有更加的多的JavaScript框架、库和工具。停止到二零一七年3月,在GitHub上飞速寻找能搜到超过110万的JavaScript项目。 在npmjs上有50万的可用包,况兼那一个包每种月的下载量将近100亿次。

AngularJS

Angular 是风靡的小卖部级框架,大多开荒人士都在使用它来营造和护卫复杂的 web 应用程序。Angular 的名气十二分高,饱含 Domino’s Pizza, Ryanair, iTunes Connect, PayPal Checkout, Google等厂商都在利用它。Angular 是四个由Google辅助的开源框架。Angular 自称是 HTML 的一个扩充,用来创设复杂的 web 应用程序。其它倘诺您熟知 TypeScript, Angular 2便是用它创设的。

  新的 Javascript 库恒河沙数,进而Web 社区愈发活跃、三种、在多地点急速前行。详细去汇报每豆蔻梢头种主流的 Javascript 框架和库近乎不可能,所以在这里篇文章中任重(英文名:rèn zhòng卡塔尔国而道远介绍部分对前面叁个发展最具影响力的前端框架。接下来让我们来一起钻探一些主流前端框架、库和工具,并研究它们的适 用项景。

差那么一点每间距叁个礼拜,就有三个新的 JavaScript 库席卷网络社区!Web 社区渐渐活跃、七种,并在七个世界火速成长。想要钻探每叁个关键的 JavaScript 框架和库,是个不大概做到的职分。接下来,小编会分享部分前端开拓的最知名和最有影响力的框架和库。下边,就让我们一齐来拜谒,顶尖的 JavaScript web 前端框架、库和工具及其应用。

2017.05.29: 更新了本文,意在能正确的叙述当前JavaScript生态的情状。

其生龙活虎小编的越来越多小说

  • 构建一个根据 Node.js 的闲聊室 Web App:远程调节和测量检验
  • 创设叁个基于 Node.js 的闲谈室 Web App:通过 WebSockets 连接

Angular 是一个 MVC 类型的框架。它提供了模型和视图之间的双向数据绑定。该多少绑定允许每当数据变动时,两侧自动更新。  它使您可以见到塑造可复用的视图组件。它提供了二个劳务框架,使得后端-前端服务通讯更便于。最后,它只是不可胜道的 JavaScript。

几时使用 AngularJS?当你正在构建贰个长短不一的 web 前端应用程序,同期供给叁个模块化的框架来管理任曾几何时。

GitHub: 
一时一刻版本: 1.4.7/1.2.29
网址: angularjs.org

  同时:

请注意:

本文重视汇报近来最盛行的客商端JavaScript框架、库和工具之间的骨干差别和她俩的基本介绍。至于是或不是您要探索的最好施行那是其余四个难题。你可以选择一个,并坚持不渝接受意气风发段时间,你要掌握你最兴奋的那多少个有希望被“更加好”的所替代,而随意你是还是不是采取采取那么些更加好的。

澳门新萄京官方网站,React

React 是二零一两年最受应接的 JavaScript 项目!每种人都好似在商酌ReactJS。二〇一八年自个儿参预的每贰个议会,至稀少几许个议题是有关 React 和同宗族的其他库(Flux, Redux卡塔尔国的。React 是开源软件,主要由 Instagram开垦,别的大型科学和技术集团也许有进献。React 自称是一个用于创设客商界面包车型地铁JavaScript 库。

React 首即使 MVC 中的 V。它的要紧完全在 MVC 的 V 部分,忽略应用程序架构的其他部分。它提供了两个组件层,使得创造 UI 成分,组合成分变得更便于。它应用虚构 DOM,因而优化了渲染,且允许从 node.js 渲染 React。其余,它达成了三头响应的数据流,因而比别的框架更易于理解和应用。

用作 MVC 中的 V,超多项目将 React 结合 Angular 或 Ember 那样的框架使用。

何时使用 React?当你想要多少个强劲的视图层,但没有需求在应用程序的别的部分使用一个繁琐的框架,只怕你在 Angular、Backbone 或 Ember 应用上急需贰个视图层时。当您正试图建设构造多少个同构 web 框架时。

 

GitHub: 
当下版本: v0.14.0
网址: Facebook.github.io/react/

  如果该篇文章未有富含你欢悦的 Javascript 框架,勿喷

风度翩翩经未有富含你最快乐的 JavaScript 的框架和库,请多包蕴。

大纲目录

  • 复杂的术语

  • 框架

  • 工具

  • 不要给自身贴标签

  • JavaScript 框架和库

  • jQuery

  • React

  • Lodash and Underscore

  • AngularJS 1.x

  • AngularJS 2.x (now 4.x)

  • Vue.js

  • Backbone.js

  • Ember.js

  • Knockout.js

  • 任何值得关怀的

  • 工具:通用自动创设工具

  • Gulp.js

  • npm

  • Grunt

  • 工具:模块打包工具

  • Webpack

  • Browserify

  • RequireJS

  • 工具:代码校验工具

  • ESLint

  • JSHint

  • JSLint

  • 工具:测量检验框架工具

  • Mocha

  • Jasmine

  • QUnit

  • 工具:其他

  • 小结和推荐介绍

  • 评论

读书本小说前,请选用下列条目款项和标准…!

  • 因为JavaScript的升高风起云涌,所以本文揭发后或许立刻就过时了。

  • 笔者所说的“最棒”的意味是“最受款待和流行的档案的次序”。作者所列出的具备的无需付费/开源的体系或然未有您怜爱使用的这么些。

  • 生机勃勃度公布驾鹤归西的项目,譬如:YUI不在本文所列的列表中,就算它还会有众多的使用者。

  • 正文只谈谈客户端的类型。一些能在服务端职业的纯服务端框架,举例:Express.js 或者 Hapi不在本文的商议列表中。

  • 关于每多个品种的音讯,作者都以有意言简意赅的概述,目标是为着驱让你和谐做进一层的研究。

  • 每叁个项目都自己提供了叁个“普遍度目标”,不过鲜明计算数据往往都以不那么纯粹的,而且也可能有十分大希望会错误的指导外人,所以数据仅供参照他事他说加以考察。

  • 自个儿大概存在一般见识,你也只怕存在门户之争,每种人都有非常大恐怕存在门户之争。本文列举的兼具工具小编并非都有使用过,但小编会告诉您自身最喜悦使用哪个,不过你应有遵照自个儿的供给做出自个儿的评估和抉择。

  • 在那证明,你的选项诱致的不得了的结果,小编和SitePoint不负任何义务。

Backbone

Backbone 是二个知名的差不离框架,相符单个 JavaScript 文件。Backbone 已经存在有后生可畏段时间了,是以 CoffeeScript 和 Underscore 出名的 杰里米Ashkenas 所付出的。对于某些为迷你 web 应用寻觅贰个构造简单的框架,而不想引进如 Angular 或 Ember 这几个大型框架的团体,Backbone 特别受应接。

Backbone 提供二个完整的 MVC 框架甚至路由。模型允许键-值绑定和数目变动的事件管理。模型(和聚众卡塔 尔(阿拉伯语:قطر‎能够接连到RESTful API。视图具有注明式事件管理,路由在处理 UXC90L 和景色管理上做的极美貌。它满含你创制多少个单页面应用程序所急需的满贯,且并未有提供太多东西,未有无需的复杂度。

何时使用 Backbone?Backbone 是小编创设容易 web 应用程序的首要推荐框架。

GitHub: 

脚下版本: 1.2.3
网站: backbonejs.org

  在行使前端框架进行付出时,提出维持版本更新。最新版本的平时都会提须要更加好的跨浏览器,跨平台作用。 需检查测验有些框架的旧版本是不是对各类浏览器以致配备的极度,请使用 相仿这几个扫描器 的工具

请实时更新您的框架和库,最新版本往往有越来越好的跨浏览器和跨设备支撑。能够利用检查实验设备同样的工具,来提携分明一个旧版本,是还是不是足以和安插最棒的设施卓越。

复杂的术语

“框架(framework卡塔 尔(阿拉伯语:قطر‎”、“库(library卡塔 尔(阿拉伯语:قطر‎”和“工具(tool卡塔尔国”这个词语,对于分裂的人在区别的时间间不相同的语境下会有两样的驾驭,但对于那么些词语本文中选用的概念如下:

Ember

Ember 是三个僵硬的 web 应用程序框架,关心程序员的工效。Ember 比较流行,它的基本团队包涵像曾是 Ruby on Rails 和 jQuery 大旨团队成员的 Yehuda Katz 的聪明人。Ember 自称是“二个用以创建大范围 web 应用程序的框架”,且不浪费你的时刻。它很僵硬,为你提供了成都百货上千抉择。

Ember 也是一个 MVC 框架。它包罗一个模板和视图引擎,当数码变动时自动更新,就像Angular,Backbone 和 React 相似。它蕴涵 web组件 的沉凝,令你利用本人标签扩充 HTML(仿佛Angular 相符卡塔尔。它也会有一个精晓怎么着与你的 RESTful API 一同坐班的路由和模型引擎。

几时使用 Ember?当您只要求四个方可运作的框架时。当你因为预算恐慌或工期比相当短而无需灵活性时,请使用 Ember。

GitHub: 
现阶段版本: 2.1.0
网站: emberjs.com

  准备好了吧,那么接下去每一个探究它们。

接下去,让大家看看下面包车型地铁列表!

一个库是多少个有团体的效能的集合。三个金榜题名的库应该包含字符串管理、日期管理、HTML DOM成分管理、事件管理、cookie管理、动漫、互连网央求管理等职能。各个封装好的API函数都能将值不易的回来给调用他的应用程序,该应用程序是基于你选取的功能去看事态完成的。那足以视作小车零部件的精选:你能够随便的采纳零器件来组装叁个得以干活的欧洲经济共同体车辆,然则你一定要团结去建造你协和的内燃机。

库平时提供的是贰个越来越高的抽象品级,那对于落实细节和差别性会特别平缓慢解决古雅。比方:Ajax常常会借助XMLHttpRequest API,可是这需求几行代码就能够完成拍卖跨浏览器的分寸的表现行反革命差。库会提供三个ajax()函数,而你能够自由的注指标去落到实处您的越来越高端其余事务逻辑就可以。

支付中使用一个库,能够节省五分一的开垦时间,因为您不必去关怀某百分之十效具体的落到实处细节。然则劣点是:

  • 如果你选取的仓库储存在bug,往往难以稳固和修复

  • 即使有bug,不能够保险库的支付组织会连忙的发布补丁

  • 贰个补丁的创新只怕会促成API的改观,进而会变成您的代码要做主要的校正来适应这些补丁的更新。

jQuery

jQuery 是二个不要介绍的库。它凭自己一个人的力量让跨浏览器网站选用成为现实,同期把 web 带到明日之处。Web 规范早就被超越贰分之一浏览器创设商选拔并确实地侧重,jQuery 是里面包车型大巴案由之风度翩翩。jQuery 基金会的沉重是“通过开源软件的支付和帮忙,以致开荒社区的同盟,改革开放的 web,让每一位都得以访谈它。”

jQuery 是社会风气上最常用的 JavaScript 库,全部应用程序都应有使用它,除非您不在意技师的工效。它使得 DOM 遍历、事件管理、动漫、AJAX 在全部浏览器上变得更简便易行、更便于。

几时使用 jQuery?一向利用,除非你想利用三个像 Zepto 的轻量级版本。

GitHub: 
当前版本: v1.11.3 or v2.1.4
网站: jquery.com

  AngularJS

AngularJS

框架

多少个框架是三个应用程序的龙骨。他供给你要现在生可畏种特有的秘诀(约定好的诀窍卡塔尔举行软件的安顿,必需特定的点参与你自身的逻辑。日常框架都会提供事件管理、存款和储蓄、数据绑定等效率。拿汽车类比的话,框架会提供小车的礁盘、车身和斯特林发动机。保险效能符合规律运作的情况下您能够增进、删除和改变有些零件。

框架常常比库提供更加高的虚幻品级,框架能够高效帮你营造你项指标百分之七十的劳作。但是鲜明是:

  • 设若你的剩余的30%的行事超越了框架的界定限定,将会变得很难做下去。

  • 框架的翻新是很困难的 - 假设是可更新的话

  • 框架的着力代码和概念非常少是演化成熟的。管理相符的事体时开采者总是能找到更加好的管理形式。

Underscore &lodash

不常 JavaScript 内置的效果变成程序猿的功用并不高。总是缺少叁个工具函数或八个足以简化代码的函数。Underscore(和 lodash卡塔 尔(阿拉伯语:قطر‎是多少个 JavaScript 库,它提供了一条龙工具函数,无需对松开JavaScript 对象打补丁。三个库均提供超越 100 个职能帮手和别的专项使用作用,包罗 map,filter,invoke,reduce,template, throttle, bind, extend, pick, clone 等更加多的函数。

什么日期使用 Underscore?当您供给三个独门的 JavaScript 文件,来立刻提高技师的工效时。

Underscore GitHub: 
Underscore 当前版本:库和工具,工具及其使用。 1.8.3
Underscore 网站: underscorejs.org

哪天使用 lodash?当您必要模块化和属性稍强版本的 Underscore,相同的时候更易于地支撑 英特尔 和社区插件时。

LodashGitHub: 

Lodash 当前版本: v3.10.1

Lodash 网站: lodash.com

  Angular 是生龙活虎款流行的信用合作社级 框架,比非常多工程师都用它来创设和保险复杂的网页应用。Angular 具有庞大的人气,使用它的营业所跟 Domino 的 Pizza 类别相近多,如 Ryanair, iTunes Connect, PayPal Checkout, 谷歌。Angular 是多个由 Google协理的开源框架。Angular 称本人为塑造复杂网页应用而对 HTML 的扩张。假若您也对 TypeScript 很熟悉,那么可以看看 怎么着写 Angular 2 .

澳门新萄京官方网站 1

工具

四个轻松的工具能够升高成本功用,不过那并不是项目中要求的风姿罗曼蒂克有的。日常工具都包涵:营造系统、编写翻译器、转变职能、代码压缩、图像压缩、安插机制等功效。

工具应该提供三个更易于的支付流程。举例:超多开拓者喜欢用Sass去开荒CSS,因为Sass提供了代码抽离、嵌套,渲染时变量、循环和函数。由于浏览器不可能深入深入分析Sass/SCSS语法,所以在测量试验和布局以前代码必需透过适当的工具编写翻译为CSS代码。

D3.js

数据可视化和图纸是豆蔻梢头种普及的 web 应用程序需要。D3.js 是别的数据操作和可视化的事实标准。它是 GitHub上最受应接的门类之风流倜傥,被多量的团伙使用。大量的图纸,图表和可视化库在 D3 上塑造。

D3 允许你操作任何来自的多少文书档案,转变来 DOM 或/和 SVG 或/和 CSS。D3 关心今世 web 规范,确定保证您不受任何专有格式的束缚,举例 Flash 和 Silverlight。

几时使用 D3.js?在您须要其它款式的可视化的时候。

GitHub: 
眼下版本: 3.5.6
网站: d3js.org

  Angular 接收 MVC 架构。它提供了 Model 层和 View 层之间双重数据绑定。这种数量绑定情势的功利是不管什么样数据变动,都会活动的换代两侧的数目。那有利于你营造可吞食的 View 组件。它还提供了三个上下端服务易于交互作用的服务框架。最要害的是,它是粗略的 JavaScript。

AngularJS 是后生可畏种流行的商场框架,繁多开拓职员使用其营造和保障复杂的 Web 应用程序。AngularJS 是非常受接待的,大多集团都使用它,像达梅鹿辄披萨、Ryan航空、iTunes Connect,PayPal 支付,谷歌(Google卡塔尔国等。AngularJS 是由谷歌帮助的开源框架。AngularJS 把温馨陈诉为三个 HTML 的扩张,可用来创设复杂的 Web 应用程序。其余,如若你领悟TypeScript,将会很明亮 AngularJS 是如何编写的。

永不给自己贴标签

库、框架和工具之间的界别往往是指鹿为马的。框架大概会依附于多个库。库只怕能够完成相近于框架的不二法门。工具对于互相恐怕是需要的。笔者试着给各种品种加标签举行分拣,不过范围可能会迥然差别。

只要您听上去以为那太复杂的话,你能够诬捏动用vanilla JavaScript进行编码。那听起来很好,不过你将不可防止地编写本身的库或着框架代码。JavaScript是浏览器和操作系统这两层抽象之上的又风流倜傥层抽象。

Babylon.js

想要创设完全相符现代 web 规范且跨浏览器的摄像游戏吗?看看 Babylon.js,它是依据 WebGL 和 JavaScript 的 3d 游戏引擎。你能够成立让人思疑的蕴藏物理、音频和粒子系统等等的高素质游戏。

哪天使用 Babylon.js?任由何时,只要您想做贰个摄像游戏或其余类型的头昏眼花三维场景,都能用上。

GitHub: 
这段日子版本: 2.2
网站: babylonjs.com

  几时利用 AngularJS? 当你营造二个目不暇接的网页前端选拔并索要一个独自的模块框架去处理整个时。

AngularJS 是二个 MVC 类型的框架,它提供了双向的数据模型和视图之间的绑定。这种数量绑定,允许在两岸只要有多个数目变化时,自动举办改革。它使您可以创设可选择的 View 组件。同时,它也提供了三个服务框架,以便前后端服务的袒裼裸裎通讯。最终,它只是惯常的 JavaScript。

JavaScript 框架和库

推广流行的项目…

Three.js

想要营造二个 3D 可视化场景,但无需一个完完全全的游玩引擎?three.js 提供了叁个轻量级的 3d 库,允许渲染 3d 为 HTML5 画布、SVG 和 WebGL。它是十一分轻便的库,在 three.js 的来得里有数百个美丽的例子。

哪天使用Three.js?当您供给三个能出口为 Canvas 的轻易的 3D 可视化场景时。

GitHub: 
时下版本: r73
网站: threejs.org

  GitHub:

怎么时候利用 AngularJS?当您正在建设构造贰个繁琐的 web 前端应用程序,并且供给一个模块化的框架来管理任曾几何时。

jQuery

jQuery

key value
类型
官网 jquery.com
仓库地址 github.com/jquery/jquery
最新版本 3.2.1
开发者 jQuery team
发布日期 2006年8月
文件大小 30kb min
用途 通用
使用率 全球72.4% 的网站在使用

在WordPress、ASP.NET和其他多少个框架中jQuery仍为被采用最多的三个库。 他引进了CSS接收器的章程去挑选页面DOM节点、链式的事件管理格局、动漫和Ajax调用的包装在客商端是生龙活虎种具有开拓性的开辟格局。

jQuery近些日子随着前端本领的不独有向上变得有一点寂寞的一望可知,但对于要求选取JavaScript功用的连串以来,它仍然为三个平价的精选。

优点:

  • 文件尺寸极小

  • 入门轻巧(渐进的求学曲线卡塔尔,便捷的线上读书应对社区情状

  • 简短的语法

  • 轻巧扩大

缺点:

  • 日增了个顾客端的API速度费用

  • 浏览器宽容性的修改,使得它变的不是那么重大了

  • 用法扁平

  • 一些 行业 抵制 反驳不必要的使用.

Mocha& Chai

JavaScript 在非常短后生可畏段时间内是可怜讨厌的。测量检验任何代码平日都被以为是讨厌的,但它却是各种开拓职员都应充作的政工。各个开采职员就像是总是视如草芥和疏忽它,而不测试他们的代码。那个该死的东西有五个解决办法,那就是Mocha 和 Chai。五个库的名字都源于美味的热果汁,它们都能帮您测量检验代码,但方法不相同。 

Mocha 是二个 JavaScript 测量试验框架,使得你在 node 模块和浏览器 app 中测量试验异步代码变得更便于。Mocha 测验能够串联运维,可认为不易的测量试验用例增多非常追踪的力量。

Chai 是叁个作为使得开辟/测量检验驱动开荒的断言库,能够搭配 Mocha 使用。它能够把您须求测量检验的东西用可读的作风简单地表明出来。

哪一天使用 Mocha & Chai?总是!请测量试验你的代码,让世界变得更加美好。

Mocha 当前版本: 2.3.3
Mocha 网址: mochajs.org
Chai GitHub: 
Chai 当前版本: v3.4.1
Chai 网址: chaijs.com

  Current Version:1.4.7/1.2.29

React

React

React

key value
类型
官网 facebook.github.io/react/
仓库地址 github.com/facebook/react
最新版本 15.5.4
开发者 Facebook and contributors
发布日期 2013年3月
文件大小 21kb min
用途 单页面应用
使用率

或是是病故一年中最受关怀的JavaScript库,React声称是一个营造客商分界面包车型客车JavaScript库。React侧重于MVC开拓方式中的View的后生可畏部分,何况能够更轻巧的创办保留状态的UI组件。他是初次达成虚构DOM的JavaScript库之黄金年代,它在内部存款和储蓄器中计算结构的差别然后连忙的翻新页面包车型大巴显得。

总计中突显React的使用率并不高, 可能是因为她被用来应用程序并不是网址。差非常的少38%的开辟者声称会采纳React。

优点:

  • 文件小, 高效, 性能高, 灵活

  • 零零部件模型简单

  • 充裕的文书档案和在线能源

  • 扶植服务端渲染

  • 时下比相当红,何况在告知发展

缺点:

  • 要学习新的概念和语法

  • 必须要凭仗营造筑工程具

  • 莫不供给其余库只怕框架来提供model和controller部分的成效

  • 也许与改正DOM的代码或然别的库不合营

可以经过我们的精品课程学习掌握越来越多React,React the ES6 Way。

Karma

既然如此已经把 Mocha 和 Chai 满含在此个列表中了,假设不分包用来运行这几个测量检验或安装持续集成测验的测量检验运转器,那将是不完全的。Karma 是风姿洒脱款意在支持你在差异的浏览器上自行运维测量试验的工具。它能够帮助你在具有浏览器上运营Mocha 和 Chai 测量检验。

不是种种浏览器都运维在具备平台,但幸运的是足以选择一些免费工具来测验别的浏览器,看看 Browser Screenshots。借使您正在 OS X 上运转代码,想测量检验 Edge 或 IE,能够 免费 使用那几个工具。

哪一天使用 Karma?当您的应用程序有叁个圆满的测验套件,并期待确定保证测量检验在颇具浏览器上经过时。

GitHub: 
方今版本: v0.13
网址: karma-runner.github.io

  Website: angularjs.org

澳门新萄京官方网站 2

Lodash and Underscore

Lodash

key value
类型
官网 lodash.com/
仓库地址 github.com/lodash/lodash/
最新版本 4.17.4
开发者 John-David Dalton
发布日期 2012年4月
文件大小 4kb – 24kb min
用途 通用
使用率

Underscore

key value
类型
官网 underscorejs.org/
仓库地址 github.com/jashkenas/underscore
最新版本 1.8.3
开发者 Jeremy Ashkenas
发布日期 2009年10月
文件大小 6kb min
用途 通用
使用率

Lodash 和 Underscore 在本节中合在了一块,因为它们都提供了数百个效用性的JavaScript实用程序来扩展原生字符串,数字,数组和此外原来对象的秘诀,他们是同样类的库。他们中间的职能有风流浪漫对重复,所以您无法也无需在同一个项目中何况接纳那七个库。

客户端使用率超级低,不过足以在劳务器端的Node.js应用程序中运用这八个库。

优点:

  • 小 且 简单

  • 完美的文书档案方便学习

  • 和大多数的库、框架都是非常的

  • 不扩充内置对象

  • 顾客端和服务端都能够行使

缺点:

  • 唯有后生可畏对方法支持ES二〇一六和更新的JavaScript版本

PhantomJS

运作总体的浏览器来测验你的代码相比耗内部存款和储蓄器和 CPU。PhantomJS 允许你运转一个轻量的 WebKit —— Safari 和Chrome(今后是 Blink卡塔 尔(阿拉伯语:قطر‎后台的渲染引擎。它同意你通过 JavaScript API 运转测验,捕捉截图,监察和控制互联网和机关浏览页面。

何时使用 PhantomJS ?当您需求开展越来越多的测验,操作页面和监视网络诉求时。

GitHub: 
当下版本: v2.0
网址: phantomjs.org

  二:React 是15年最受招待的 JavaScript 项目!大约人人都在座谈 ReactJS。二零一八年,我参预的每三个会差了一些都会有生机勃勃五个话题研究 React 和同等体系下的别的库( Flux , Redux ) 。React 是多个开源项目,大致是由 Fackbook 和别的首要的技艺公司贡献开垦的。React 称本人为为营造客商接口而提供的 JavaScript 库。

React 是现年最受喜爱的 JavaScript 的工程!每一个人就像都在争论ReactJS。每一个集会上,二零一八年列席的议会,至罕有多人是在座谈 React。React 是开源的,首假设由 facebook 依靠任何合营社的首要才具开辟出来的。React 描述自身是三个 JavaScript 库,用于营造客户分界面。

AngularJS 1.x

AngularJS

key value
类型 框架
官网 angularjs.org
仓库地址 github.com/angular/angular.js
最新版本 1.6.4
开发者 Google
发布日期 2010年10月
文件大小 144kb
用途 单页应用
使用率

Angular是首先个冒出在本文列表中的MVC应用程序框架 。Angular的最风靡的版本正是1.x版本,他援助HTML和多少的双向绑定,并从事情逻辑中解耦DOM的操作。

Angular 1.x 版本仍在迈入,固然版本2(以往是本子4了卡塔 尔(阿拉伯语:قطر‎已经发表。不知道?往下看…

优点:

  • 被几家大商厦普及运用的流行框架

  • 营造现代web应用程序的单纯解决方案

  • MEAN (MongoDB, Express.JS, AngularJS, NodeJS)技艺栈的生龙活虎局地,有恢宏的稿子和课程可供就学

缺点:

  • 对待别的框架有着陡峭的就学曲线

  • 代码库文件十分大

  • 无法直接晋级到Angular 2.x本子

  • 固然是Google项目,谷歌(Google卡塔 尔(阿拉伯语:قطر‎如同从未利用它?

Grunt & Gulp

为临蓐条件营造网址,平时涉及到抓好品质的职责,比如 JavaScript 和 CSS 的回退, CoffeeScript/TypeScript 的编译,单元测量试验,语法检查。也许你早就有三个为网站表露到分娩条件的工具链,若无,你能够运用职务运转器,例如Grunt 或Gulp。两个皆有大气关于网址的此外调换的插件,为揭穿到生产条件做好准备。

什么时候使用 Grunt?当您欢愉写配置文件同有时间不介怀你的天职运营器生成人中学间文件时。

Grunt GitHub: 
Grunt 当前版本: v0.4.5
Grunt 网址: gruntjs.com

曾几何时使用 居尔p?当你欢乐在布署上写代码和选取 node.js 的流成效来加快职务实行时。

Gulp GitHub: 
Gulp 当前版本: v3.9.0
Gulp 网址: gulpjs.com

  React 基本上用来作为 MVC 中的 V。它完全专心于 MVC 中的 V 部分,而忽略了动用中的此外一些架构。它提供了一个组件层,那让大家易于制作UI成分并将这几个UI成分组合在协同。它抽象出了DOM,因此而优化了渲染, 并允许你选取 node.js 渲染 React。其余,它达成了单向数据交互作用流,这使它比任何的框架更便于驾驭和采用。

React 在 MVC 中,首借使 View。它完全专心于 MVC 那有个别,无视应用程序的别样一些。它提供了二个成分层,能够更易于接收UI成分,并将它们组成在一块儿。它抽象了 DOM,使其擅专长优化渲染,并允许接纳 node.js 来宣布 React ; 它达成了一个三头灵活的数据流,使得它更易于驾驭和行使此外框架。

Angular 2.x (现在 4.x)

Angular

key value
类型 框架
官网 angular.io
仓库地址 github.com/angular/angular.js
最新版本 4.1
开发者 Google
发布日期 2016年9月
文件大小 450kb min
用途 单页应用
使用率

Angular 2.0 于二〇一六年七月公告。相对比前边的版本是全然被重写了,2.x本子引进了动用TypeScript(必要被编写翻译为JavaScript卡塔尔国创设的依照模块化组件的模子。特别混乱的是,在二〇一七年的二月份发表了4.0的版本(版本3直接被跳过,为了制止版本语义的主题素材卡塔尔。

Angular 2 版本和v1版本之间有着根本的分别。 两个互不宽容—— 抑或 Google应该给2 本子其余取三个不等的名字!

优点:

  • 创设今世web应用程序的纯粹实施方案

  • 依旧是 MEAN 技艺栈的风流倜傥部分,尽管Angular 2 教程 独有少之甚少的风度翩翩局部是可用的

  • TypeScript提供了某些近乎于静态语言(比方:C#、Java卡塔尔国的新特征。

缺点:

  • 相对来讲别的框架有着陡峭的读书曲线

  • 代码库文件不小

  • 无可奈何从Angular 1.x本子直接升高

  • 与1.x相对来讲,Angular 2.x的使用率绝对很低

  • 固然是谷歌(Google卡塔尔国项目,谷歌就好像未有行使它?

Babel

JavaScript 语言正在神速提升。ECMAScript二零一六于二零一八年夏天公布,它的居多新特色在风靡的浏览器上贯彻了。假若你想看看 ECMAScript 二〇一五 的宽容性,你能够看看来自 @kangax 的那个 表。你会小心到,最新版本的 Edge,Firefox 和 Chrome 已经差非常少统统协作了。

我们并不是生存在一个完备的世界。作为开采人员,大家须要持续帮助旧的浏览器,它们从不流行最佳的 JavaScript 性情。大家要拉动 web 和改进大家的代码库。Babel 是三个JavaScript 编写翻译器,用于把新型的 JavaScript 规范编写翻译成可在 IE9 等老浏览器上运营的包容ES5的 JavaScript。它有大器晚成对插件,使得 React 开采更易于,以致能够使用一些不归于该标准的特色(比方ES7卡塔尔。

哪天使用 Babel?当你想使用新的 JavaScript 语言特色,同不时候还要支撑老版本浏览器时。

GitHub: 
时下版本: 6.1.2
网址: babeljs.io

  八个等级次序比如 Angular ,Ember 绑定使用 React 成为 MVC 中的 V。

用作在 MVC 中的 V,多数工程组成 React 和 AngularJS 或 Ember 一同行使。

Vue.js

Vue.js

key value
类型 框架
官网 vuejs.org
仓库地址 github.com/vuejs/vue
最新版本 2.0
开发者 Evan You
发布日期 2014年2月
文件大小 19kb min
用途 单页应用
使用率

Vue.js是三个用来创设顾客分界面包车型地铁轻量级渐进式框架。Vue.js的主干是提供叁个相似于React的杜撰DOM服务于视图层,他不光可以独自的营造五个完好的单页面应用,也得以与其余库集成使用。该框架是由事先在AngularJS职业过的尤雨溪创建的。

Vue.js使用HTML模板的语法绑定DOM实例数据。模型正是平日的JavaScript对象,当数码被退换时,它会自动更新视图。其余还提供了Vue.js生态工具,在那之中囊括:脚手架(scaffolding卡塔 尔(英语:State of Qatar)、路由(routing卡塔尔国、状态管理(state management卡塔 尔(阿拉伯语:قطر‎、动漫(animations卡塔尔等。

优点:

  • 高效腾飞普遍,并且稳步盛行

  • 超轻巧开垦出高素质的项目,让开辟者很有成就感

  • 正视小,质量好

缺点:

  • 新品类应用Vuejs——大概存在很狂危机

  • 依赖于单个开辟者(近年来此项目是尤小右一人付出卡塔 尔(阿拉伯语:قطر‎的翻新

  • 相较于别的框架,Vuejs的学科财富非常的少

越多 Web 开垦实践

正文来源微软技巧布道师 Web 开垦种类,里面有实用的 JavaScript 学习,开源项目和互操作性的特级实行(富含与 微软Edge 浏览器和新的 EdgeHTML渲染引擎)。

咱俩慰勉你跨浏览器和设施实行测量检验,包括微软的Edge——Windows 10的暗中认可浏览器——在 dev.modern.IE 上有免费工具:

  • 环视你的网址中过时的库,布局难点和可访谈性
  • 下载 Mac, Linux 和 Windows 下的无需付费设想机
  • 跨浏览器检查 Web 平台状态,包含微软 Edge 的路径图
  • 在你的设备上长途测量试验微软 Edge

来自己们程序员和布道者的越来越尖锐学习:

  • GitHub 上的编码实验室: 跨浏览器测验和特级实行
  • 2015 微软 Edge Web 峰会 (来自己们的程序员团队和JS社区)
  • 很棒,笔者得以在 Mac 和 Linux 上测试 Edge 和 IE 了! (来自Rey Bango)
  • 带动 JavaScript 同不常候不损坏 Web (来自Christian Heilmann)
  • Edge 渲染引擎让 Web 职业 (来自Jacob Rossi)
  • 基于 WebGL 的 3D 渲染 (来自David Catuhe)
  • 托管 web app 和 web 平台的立异 (来自Kevin Hill和Kiril Seksenov)

大家的社区开源项目:

  • vorlon.JS (跨设备远程 JavaScript 测量试验)
  • manifoldJS (布署跨平台托管 web app)
  • babylonJS (让 3D 图形制作更简约)

更加多免费工具和后端web开荒内容:

  • Linux, MacOS 和 Windows 下的 Visual Studio Code
  • 使用 node.JS 编码并在 Azure 上无偿试用

    2 赞 26 收藏 1 评论

  何时使用 React?当你想要有四个强盛的 View 层,而采用中的其余一些缺不需要一个繁缛的框架时,或当您想要一个 View 层和您的 Angular, Backbone,可能Ember应用一齐行使。当你试着构建多少个同构的网页框架。

如何时候利用 React?当您想要一个精锐的 View 层,但接纳的其它一些却无需详细的框架时,或许当您的选用中想要八个重新组合了Angular、Backbone 或 Ember 的视图层时,又也许是创设三个同构的 Web 框架时。

Backbone.js

Backbone.js

key value
类型 框架
官网 backbonejs.org
仓库地址 github.com/jashkenas/backbone/
最新版本 1.3.3
开发者 Jeremy Ashkenas
发布日期 2010年10月
文件大小 8kb min
用途 单页应用
使用率

Backbone.js是提供在劳动器端框架中遍布的MVC结构的最先的客户端选项之后生可畏。Backbone.js唯有Underscore.js叁个依靠,而且Backbone.js和Underscore.js都以发源同二个开荒者之手。

Backbone.js自称是多个库,因为他得以与别的品种并入。笔者猜大多数人都把他看成一个框架,就算不像其旁人认为的那样。

优点:

  • 小, 轻量 ,简单

  • 不在HTML中增加业务逻辑

  • 周到的文书档案

  • 广大应用程序使用,如:Trello, WordPress.com, LinkedIn 和 Groupon 等

缺点:

  • 相较于其余框架(如AngularJS卡塔尔它的抽象等第超级低(固然这被看作大器晚成种优势卡塔尔国

  • 内需信任别的构件来促成部分作用,举例:数据绑定功用

  • 近日超多的框架已经不复选取MVC结构了

有关作者:cucr

澳门新萄京官方网站 3

和讯博客园:@hop_ping 个人主页 · 作者的文章 · 17

澳门新萄京官方网站 4

  GitHub:

Backbon

Ember.js

Ember.js

key value
类型 框架
官网 emberjs.com
仓库地址 github.com/emberjs/ember.js
最新版本 2.15.0
开发者 Ember team
发布日期 2011年12月
文件大小 95kb min
用途 单页应用
使用率

Ember.js基于 Model-View-ViewModel (MVVM)方式最有争议的框架之意气风发。他在单个包中达成了模版、数据绑定和库。他的“约定优于配备”的概念对于Ruby on Rails 的使用者来讲一点都不不熟悉。

优点:

  • 为客商端应用程序创设提供了单风姿洒脱的施工方案

  • 开垦者能够异常快的左边开拓顺序并投入坐褥——它依据于Jquery

  • 赏心悦目标向后特别和晋级选项

  • 使用了现代web开荒的正规

缺点:

  • 大量可分发(large distributable卡塔 尔(阿拉伯语:قطر‎

  • 和那多少个朝着小组件结构的取向前进的框架比较他是震天动地笨重的

  • 陡峭的上学曲线——那是Ember学习的形式依旧还未经济学习

  近期版本:v0.14.0

澳门新萄京官方网站 5

Knockout.js

Knockout.js

key value
类型 框架
官网 knockoutjs.com](http://knockoutjs.com))
仓库地址 github.com/knockout/knockout
最新版本 3.4.2
开发者 Steve Sanderson
发布日期 2010年7月
文件大小 59kb min
用途 单页应用
使用率

四个较老的MVVM框架,Knockout.js采纳观看者方式去承保UI与底层数据是保持同步的。他的表征是:模板化 和 信任追踪。

优点:

  • 小,轻量,並且尚未信赖

  • 完美的浏览器扶持(那怕是IE6卡塔尔

  • 康健的文书档案

缺点:

  • 大体系将会变得胡言乱语复杂

  • 开垦进取很缓慢

  • 使用率在降低

  网址: Facebook.github.io/react/

Backbone 是一个很盛名的精简的框架,融合了一个单纯的 JavaScript 文件。Backbone 流行了大器晚成段时间。由 杰里米 Ashkenas 从CoffeeScript 和 Underscore 框架中付出出来的。对于追寻Mini架构的团组织来讲,Backbone 是特地受款待的。因为他俩Mini的 Web 应用是无需动用像 AngularJS 和 Ember 那样的特大型框架的。

任何值得关切的

学而不厌越来越多?上边包车型大巴那么些系列就算不是很盛行不过很值得关怀:

  • Polymer – 能够跨浏览器接济HTML5 web组件的库。

  • Meteor – 二个用于web应用程序的全栈平台。

  • Aurelia – 八个较新的,轻量级的,跨平台的框架。

  • Svelte – 四个丰富新的门类,那么些类型得以把框架的源码解压缩并格式化为展现本人的JavaScript。

  • Conditioner.js – 多个基于状态自动决定加载只怕卸载模块的库。

  Backbone

Backbone 提供了一个整机的 MVC 框架和路由。该模型允许键-值绑定和管理多少变动的风浪。Models(和 Collections卡塔尔能够接连到 RESTful API 中。Views 能够注解事件管理,而路由器则足以非常了不起地拍卖 U大切诺基L 和气象管理。在成立一个不提供太多效果与利益和非要求复杂作用的单页面应用时,能提供你所需的拥有成效。

工具: 通用自行营造筑工程具

创设筑工程具得以自动创设种种web开采任务,举个例子:预编写翻译、编写翻译、图像压缩优化、代码压缩、代码校验以致运维测量检验等。并且能够在单纯可进行的文件中管理所需的天职。最常用的工具如下所列:

  Backbone 是 三个蜚声的简洁的框架,全数剧情都可以放置三个纯净的文本里。Backbone 已经流行了黄金时代段时间,其作者是 杰里米 Ashkenas,曾经由于开荒了 CoffeeScript 和 Underscore 而为大家所知。Backbone 特别适用于须求支出的 web 程序一点都不大的那么些组织,他们期待能应用小巧的框架,实际不是像 Angular 或然Ember 这样的特大型框架。

什么样时候使用 Backbone?Backbone 是适用于简单 Web 应用的 GOTO 框架。

Gulp.js

Gulp.js

key value
官网 gulpjs.com
仓库地址 github.com/gulpjs/gulp
最新版本 3.9.1
月下载量 300万

Gulp.js并非首先个自动创设工具,但她急速形成了最盛行的,他也是本人个人最欢快用的。Gulp使用轻便阅读的JavaScript代码,将源文件加载到流中,并在将数据输出到创设文件夹早先经过种种插件管道管理多少。它大约、飞快、有意思——Gulp.js和前边别的一个可筛选相比你都会发觉这几个特点(examine Gulp.js before any other option卡塔尔国。

  Backbone 提供了全职能的 MVC 框架和路由。它的 Model 能够完毕key-value 绑定和多少更新的事件管理。Model(及 Collection)能够与 RESTful 的 API 合营职业。View 可以注明事件管理,Router 在 U哈弗L 管理和气象管理方面做的很好。对于开拓二个单页面应用,全数要求的效果与利益都能够匡助,无需极其引进无需的繁缛。

Ember

npm

npm

key value
官网 npmjs.com
仓库地址 github.com/npm/npm
最新版本 4.5.0
月下载量 300万

npm是Node.js的包管理工科具,可是她的脚本工具得以被用来通用的自行创设筑工程具。对于叁个从未过多依靠的粗略项目以来那是二个对的的取舍。但是,用于很复杂的任务你会神速发掘那是不具体的。

  什么时候使用 Backbone?对于Mini的 web 程序,Backbone 是笔者必选的框架。

澳门新萄京官方网站 6

Grunt

Grunt

key value
官网 gruntjs.com
仓库地址 github.com/gruntjs/grunt
最新版本 1.0.1
月下载量 200万

Grunt是首先个落成批量拍卖的JavaScript职责自动塑造工具之黄金时代,可是他的创设速度的瓶颈和复杂性的JSON配置以致了Gulp的敏捷腾飞。未来最不好的主题材料风度翩翩度被解决了,Grunt仍为多少个很好的工具可供选取。

  GitHub:

Ember 是多个单独的 Web 应用程序框架,专一于编码功用。Ember 是比较受应接的,大旨团队包括牛人 Yehuda Katz,他是 Ruby on Rails 和 jQuery 的主导团队之风流罗曼蒂克。Ember 描述本身为三个不浪费你的时日,能用来创立伟大 Web 应用程序的框架。 那是极度有意见,那也令你有了许多取舍。

工具:模块打包工具

拘留更加的多的JavaScript文件将高速变成八个苦差事。经常景观下,浏览器加载文件是不会被编写翻译的,所以文件之间的依靠关系必需经过适当的文件加载顺序来保险。管理这种顺序的诀窍有好些个,比方: ES6 Modules 和 CommonJS,不过浏览器支持的节制,模块打包工具变得非常重要。

  当前版本:1.2.3

Ember 也是一个 MVC 框架。它回顾四个模板和视图引擎,保险了多少变化时的自动更新,就像是AngularJS,Backbone 和 React 相符。它包涵的定义 web 组件,让你用自个儿的标签来扩张 HTML(就如AngularJS卡塔尔国。它也可以有一个路由和模型引擎,能够和 RESTful API 合作工作。

Webpack

Webpack

key value
官网 webpack.js.org
仓库地址 github.com/webpack/webpack
最新版本 2.5.1
月下载量 600万

Webpack协理全部流行的模块配置,并已改为React开拓的代名词。固然Webpack声称是模块打包工具,Webpack也足以用来通用的电动创设筑工程具。

  官方网址: backbonejs.org

什么样时候使用 Ember?假如你只是想要二个能力所能达到工作的框架时、恐怕您的预算紧张、又或许最前期限将近时,不追求太多的圆滑,能够选用Ember。

Browserify

Browserify

key value
官网 browserify.org
仓库地址 github.com/substack/node-browserify
最新版本 14.3.0
月下载量 260万

Browserify能够让您利用Node.js的CommonJS模块情势来组织你的JavaScript代码,通过编写翻译将全部模块打包在一个浏览器包容的文书中。

  Ember 作为三个 web应用框架,极度小心于程序猿的频率上。Ember 相对相比盛行,宗旨团队有过多很理解的成员,满含 Yehuda Katz,他是 Ruby on Rails 和 jQuery 的中坚团队的分子。Ember 对协和的固化是“叁个用来创设震动的 web 应用的框架”,它也实在不会浪费你的日子。它在此上头丰富专心,为您提供数不清的选料。

JQuery

RequireJS

RequireJS

key value
官网 requirejs.org
仓库地址 github.com/jrburke/r.js
最新版本 2.3.3
月下载量 100万

RequireJS是叁个在浏览器端(客户端卡塔 尔(阿拉伯语:قطر‎的模块加载器,固然他也能被用来Node.js端(服务端卡塔 尔(英语:State of Qatar)。

  Ember 同样也是叁个 MVC 的框架。它含有二个模板和视图引擎,在数额更新时得以自动更新,那下面与Angular, Backbone, 和 React 相通。它还可能有一个 web 组件 的定义,允许你用本身的标签扩张HTML,(如Angular)。它还应该有贰个路由及 model 引擎,能够与 RESTful API 一同干活的很好。

澳门新萄京官方网站 7

工具: 代码校验工具

“代码校验工具(Linting卡塔尔”会剖判你的代码,质量评定代码中神秘的失实和非驴非马的语法结构。那样您的代码中就不会再次出现身贫乏括号或许未证明的变量那样的荒谬。

  几时使用 Ember?适用于您必要一个框架马上就会利用。对灵活性须求不高的时候能够选择Ember,因为您习感觉常是预算恐慌只怕工期恐慌。

jQuery 是三个无需过多介绍的框架。它凭一己之力使得跨浏览器站点成为切实并催促Web 发展到明天。Web 标准被大部分尤为重要浏览器厂家所选择真正的器重,jQuery 是其缘由之风流倜傥。jQuery 的基金会的沉重是“通过支付和扶植开源软件,升高开放的互联网,使之为全部人开放,并与开辟社区同盟。”

ESLint

ESLint

key value
官网 eslint.org
仓库地址 github.com/eslint/eslint
最新版本 3.19.0
月下载量 600万

ESLint是二个可插拔的代码校验工具。每叁个校验准则都以叁个插件来兑现,所以她得以灵活安插成你所急需的金科玉律。

  GitHub:

jQuery 是世界上最常用的 JavaScript 库,未有应用程序不去行使它,除非不留意编码功用。它使得在全部浏览器中,DOM traversal、事件管理、动漫、AJAX 是这么的粗略和轻巧。

JSHint

JSHint

key value
官网 jshint.com
仓库地址 github.com/jshint/jshint
最新版本 2.9.4
月下载量 200万

二个心灵手敏的JavaScript代码校验工具,他得以很好的在真正的荒诞和残酷的语法要求之间赢得很好的平衡(不仅可以够窥见代码中的错误,又未必严峻的依照鸠拙的语法标准来校验代码卡塔尔。JSHint是本人个人最高兴用的叁个校验工具。

  当前版本:2.1.0

如何时候使用 jQuery?除你想接受像 Zepto 那样的轻量级版本之外,都可以运用 jQuery。

JSLint

JSLint

key value
官网 jslint.com
仓库地址 github.com/reid/node-jslint
最新版本 0.10.3
月下载量 5万

那是初次达成豆蔻年华套严格暗中认可准绳的代码校验工具之后生可畏,可是那对于作者是应用情状貌似不太同样(笔者不赏识使用这些工具卡塔尔。

  官方网站: emberjs.com

Wijmo

工具: 测量试验工具

TDD(测量检验驱动开辟卡塔 尔(阿拉伯语:قطر‎须求你先编写制定测验代码(用来测量检验工作代码卡塔 尔(英语:State of Qatar),然后再起来写作业代码。当然假若你能编写代码去测量检验你的测验代码那就更加好了。

与此相类似的工具你会有这么些采纳,举个例子:Ava, Tape 和 Jest ,不过最盛行的多个如下所列:

  JQuery 这几个库就不用多做牵线了。它独自担当了让跨浏览器网址成为实际的重任,是它使得整个 web 成为后日这一个样子。Web 标准的创立以致浏览器商家对行业内部的承当地方,jQuery 功不可没。jQuery 基金会的对象是"通过开源软件的支出和支撑,以至社区的同盟,增加开放的互联网,让种种人都能访谈"

澳门新萄京官方网站 8

Mocha

Mocha

key value
官网 mochajs.org
仓库地址 github.com/mochajs/mocha
最新版本 3.3.0
月下载量 500万

Mocha是八个不只能在Node.js运转也足以在浏览器运维的JavaScript测量试验框架。Mocha支持异步的测量检验办法,他经常和Chai联机利用,为了使测量检验代码能够以豆蔻梢头种可读的措施被代表。

  JQuery 是世界上利用最广的 JavaScript 库,未有选用能够相差它,除非你对开采功能不感兴趣。它使得 DOM 遍历、事件管理、动漫和 AJAX 在有着浏览器上都变得如此的简短易用。

Wijmo Enterprise 是为集团应用程序支付而推出的一多元包蕴 HTML5 和 JavaScript 的支付控件集。包涵有提升的 JavaScript 控件、精髓的 jQuery 小构件、金融Logo、甚至 FlexSheet 和 OLAP,能够满足移动端、PC 端和支持IE6 等应用程序的必要。同期,Wijmo 还扶持别的流行的框架,如 Angular、Angular2、KnockOut、Vue、React 等。

Jasmine

Jasmine

key value
官网 jasmine.github.io
仓库地址 github.com/jasmine/jasmine-npm
最新版本 2.6.0
月下载量 200万

Jasmine是风流倜傥款行为使得的测量试验工具,他能够自动测验你的UI和浏览器中的交互作用行为。

  几时使用 jQuery?任曾几何时候,除非您筹算选择更轻量级的版本,比如 Zepto 。

怎么时候利用 Wijmo?当您想为应用程序构建具备杰出客商体验的客商分界面时。

QUnit

QUnit

key value
官网 https://qunitjs.com/
仓库地址 github.com/kof/node-qunit
最新版本 1.0.0
月下载量 2.5万

必然,QUnit是二个单元测量试验框架,他得以在传递特定参数时检查函数结果。它还将申报测验覆盖率,以确认保证您未有脱漏特定的代码分支。

  GitHub:

Underscore&lodash

工具:其他

固然笔者尽了非常大的极力,作者要么接受有人抵触JavaScript!只怕编写翻译器举个例子:TypeScript, LiveScript 和 CoffeeScript能够令你的支付生活变得有意思一点。此外,今世的转移工具Babel可以知道将轻巧的 ES2015代码调换为浏览器宽容的ES5代码,或者又会让您有越多的童趣。

市道上以后留存几十三个JavaScript驱动的HTML模板引擎,比如:Mustache, Handlebars, Pug (Jade) 和 EJS。作者比十分的赞同于采取选取保持JavaScript语法的轻量模板,比方:EJS 和 doT。

谈起底, 能自动生成文书档案的时候哪个人会甘愿自身手动的去写啊?ES二〇一五拾分的文书档案生成器有: ESDoc, JSDoc, YUIdoc, documentation.js 和 Transcription。

  当前版本:v1.11.3 或 v2.1.4

澳门新萄京官方网站 9

计算和推荐

  官网: jquery.com

对此程序开辟者来讲,一些 JavaScript 的嵌入,功能是非常矮的。总有缺乏实用的效用或将代码化简的函数。Underscore(和 lodash卡塔尔国是二个 JavaScript 库,提供了实用成效,同不时候无需 JavaScript 对象放置的猴子补丁。那四个库提供当先 100 个帮扶函数和其余极其好用的效果;,包涵像地图,过滤器,调用,裁减,模板,调解,绑定,扩大,筛选,克隆和更加多的效应。

越多来自小编的篇章

  • 互联网中最令人讨厌的“黑暗格局”

  • 你的Web主机通过那7项测量试验了呢?

要是您挑选随大流,近些日子大伙儿的趋向或然曾经落伍于React等风度翩翩类框架,而别的的库正在以看似的本领趋势前行。对于web应用来讲,那是豆蔻梢头种通用的、安全的选项,不过你也相应考虑 Vue.js。

全部性的框架未来逐步退化,可是倘诺你的大类型要求叁个严格架构的话,AngularJS仍是一个不错的取舍。半数以上人仍百折不挠采纳V1.0版本,不过那也许是出于项目需求必不得已的选料。长时间来看,要是你愿意上学TypeScript,版本4 会是多个更是安全的精选。

毫无忽略jQuery。固然他不是新潮的本事可行性,也不会在种种科学和技术音信中现身,但它是主动上进的,何况对于网址和应用程序都有更加好的劳务援助工夫。无人不晓,jQuery有着平滑的就学曲线。

若是您是珍视挑战的话,Svelte是叁个有意思的用户端/服务端的选项,它亦可在构建时预渲染JavaScript,那只怕能改造我们的开垦方式。

工具的拈轻怕重不是太主要,大概会因项目而异。Gulp是运用最多的,不过WebPack正变得非常流行。使用ESLint 和 Mocha用以测验会令你不会出错,但并非独有那五个能够选拔,也可以有大多的其他工具得以使用。

也正是说,全数的项目、团队和本领栈都以不相同的。手艺选型的时候你的评估时间是轻巧的,所以你很只怕就能够使用你领会的技艺。本文将会接收推荐的未知框架,但当您有锤子的时候,一切看起来都像钉子相近(原著: This article will receive comments recommending FrameworkX but everything looks like a nail when you have a hammer.卡塔尔。

终极,不要忘记记这么些可供选取的框架、库和工具!JavaScript开荒在过去十年中发出了天翻地覆的转移,大家早就从多少个主导的扶植库产生了三个压倒性的选择。大家相当轻易陷于越发复杂的开辟陷阱,大概每隔多少个月就切换到新型的盛行框架。小的村办项目方可思考采用vanilla JavaScript。在为任何门类选用框架时这一个知识不会过时,那或多或少是很尊贵的。

自己从不列出你最心爱使用的JavaScript框架、库和工具?当然小编会有疏漏! 应接给作者留言补充…

本文审阅核对:Panayiotis Velisarakos 和 Sebastian Seitz。 谢谢SitePoint’s 全体的审阅稿件人,让本站内容质量变得更加高!

翻译注:由于水平有限,如有争论接待指正,多谢~

  Underscore 和 lodash

怎么着时候使用 Underscore?当你须要一个纯粹 JavaScript 文件来提升编码功效时。

版权证明

本译文仅用于学习、斟酌和沟通目标,接待非商业转载。转发请评释出处、译者和众成翻译的完全链接。要赢得包蕴以上音信的正文马克down源文本,请点击这里。

  有时内置的 JavaScript 对于让技士真正的有生产力还远远不足。总是会缺了多少个工具函数,又只怕是八个能简化代码的函数。Underscore (还应该有 lodash) 正是那样的三个 JavaScript 库,它提供了一条龙工具函数,没有必要经历不足的技术员再去给停放的 JavaScript 对象打补丁。多个库都提供了超越 100 个帮扶函数,还会有其余极其的好东西;包罗了像 map, filter, invoke, reduce, template, throttle, bind, extend, pick, clone 等等那些函数。

几时利用 lodash?当您必要一个模块和轻量高效的,轻便被 AMD和社区插件帮忙 Underscore 版本时。

  什么日期使用 Underscore?当您想要具备三个即时能抓好程序猿效用的 JavaScript 文件时。

D3.js

  Underscore GitHub :

多少可视化和图纸是 Web 应用程序的遍布必要。当提到到其余数据操作和可视化,D3.js 是实在的正经。它是在 GitHub 上最受招待的品种之朝气蓬勃,并在被数百个公司使用。一大波的图纸,图表和可视库建构在 D3 上。

  Underscore 当前版本:1.8.3

D3 允许操作任何数据源的文本,并且能够调换为 DOM、SVG 或 CSS。D3 静心到现在世互联网正式,并确定保证像 Flash 或 Silverlight 等专有格式的免费。

  Underscore 网站: underscorejs.org

怎么样时候使用 D3.JS?当你要求此外款式的可视化时。

  哪一天使用 lodash?当您想要一个模块化的,品质更优良一点的,并附带有对于 英特尔和社区插件帮助的 Underscore 版本时。

Babylon.js

  Lodash GitHub:

想要成立二个一心运行在现代 Web 标准和跨浏览器上的录制游戏?能够考虑贝布ylon.js,Babylon.js 是一个成立在 WebGL 和 JavaScript 上的 3D 游戏引擎。你能够创设二个疑虑的高水平的游戏引擎,富含物理,音频和粒子系统。

  Lodash 当前的版本:v3.10.1

哪些时候使用 Babylon.js?当您正在营造二个包括别的复杂 3D 场景的录制游戏时。

  Lodash 网站: lodash.com

three.js

  D3.js

澳门新萄京官方网站 10

  数据可视化和图表是web应用程序的大器晚成种不奇怪需要。当提到到任何数据操作和可视化时,D3.js 便是事实上的标准。它是 GitHub 上最受款待的类别之风流浪漫,并被数百个组织机构所采纳。大量的图片、Logo和可视化库都是零部件于 D3 之上的。

想要创立一个 3D 可视化,却又不需求完整的游戏引擎?Three.js 提供了三个轻量的 3D 库来将 3D 渲染成多少个 HTML5 canvas、SVG 和 WebGL。那确实是二个生硬的库,在 Three.js 的用例体现中,有几百个职能很好的例子。

  D3 让您能够操作任何来源的数目文书档案,并将数据开展转移后选拔到 DOM、SVG 和 CSS上。D3 专心于今世的 web 规范,以致确认保证您能够不面前遭遇任何像 Flash 或然 Silverlight 那样的专有格式的界定。

如几时候使用 three.js?每当你须要四个简单易行的三维可视化,能够输出到画布上时。

  什么日期利用 D3.js?当您必要其余类型的视觉效果的时候。

Mocha & Chai

  GitHub:

澳门新萄京官方网站 11

  当前版本:3.5.6

在十分短生机勃勃段时间里,JavaScript 的测量试验令人匪夷所思的沉闷。从头伊始,测量试验任何代码经常被视为令人讨厌的,但它是每五个开采者应该做的。同一时候,测量检验他们的代码,每个开荒者就像总是非常不足,而筛选忽视它。有多个办法来改良这些标题,就是应用 Mocha & Chai 的款式。纵然那五个库从美味的热饮中得名的,但是它们都得以以分化的方法测验你的代码。

  网站: d3js.org

Mocha 是二个 JavaScript 测量试验框架,可以很自在地在 node 模型和浏览器应用程序中测量检验异步代码。Mocha 测量检验能够串联运维,何况对于科学的测试用例具有高素质的追踪异常。

   Babylon.js

Chai 是一个行为使得的支付/测量试验驱动开采断言库,能够与 Mocha 配套使用。它使得能够比较轻巧的未来生可畏种可读的章程去发布您的测验内容。

  想要营造叁个通通运转于今世浏览器上,而且能跨浏览器运营的录制游戏吧?那就看看 Babylon.js 吧,它是贰个 3D 游戏引擎,基于 WebGL 和 JavaScript。你能够运用其大要、音频和粒子系统创造出超越预期的高水平游戏来。

怎么着时候使用 Mocha 和Chai? 永恒都可以!请测量试验你的代码,使世界变得越来越美观好。

  哪天利用 Babylon.js?当您正在创设一个视频游戏也许三个某种类型的 3D 场景时。

Karma

  GitHub:

其一列表上含蓄了 Mocha 和 Chai,若是不含有运营这一个测量试验和设定持续集成测试的运转者,那么那将是不完全的。Karma 是三个意在帮忙针对差别的浏览器自动运转测量检验的工具。那将辅助你在装有的浏览器上运行Mocha 和 Chai。

  当前版本: 2.2

并不是每三个浏览器都得以在各个平台上运转,幸运的是,有风度翩翩对免费的工具,你可以用来测量检验其余浏览器, 比方浏览器截图。要是你在 OS X 上运转,并期望测验 Edge 或 Internet Explorer,您能够接收这种无需付费工具。

  网站: babylonjs.com

如曾几何时候使用 Karma?当你的应用程序有八个总体的测量检验套件,并想要确定保证在颇负的浏览器上测量检验通过时。

  Three.js

PhantomJS

  想要营造一个 3D 视觉特效,可是又无需叁个效应完全的嬉戏?Three.js 提供了一个轻量级的 3D 库,让您能够将 3D 效果渲染成贰个 HTML5 的 canvas, SVG, 和 WebGL。那是叁个详单轻巧的库,在 three.js 陈列站点上能够看来数百个美丽的示范。

澳门新萄京官方网站 12

  何时使用 Three.js?当您要求一个简易的能出口为 Canvas 的 3D 视觉效果时。

运作全职能浏览器,以测量检验你的代码内部存款和储蓄器和 CPU 密集型。PhantomJS 允许你在 Safari 和 Chrome 上运维 headless WebKit的渲染引擎。那样您就足以运作你的测验,捕捉显示器截图,监视网络,使用 JavaScript API 自动浏览页面。

  GitHub:

怎样时候使用 PhantomJS? 当你必要做更多的测量检验,操作页面并监视互联网哀告时。

  当前版本: r73

Grunt & Gulp

  网站: threejs.org

澳门新萄京官方网站 13

  Mocha 和 Chai

出品网址建设平常会涉及到部分加强品质的职分,比方缩短 JavaScript 和 CSS,CoffeeScript/TypeScript 的编写翻译,单元测量检验,质量lintin。只怕你早就为付加物网址希图好了工具链,不过只要还一直不,那么你能够使用 Grunt 和 Gulp 那样的工具。这两个工具都有不知凡几插件,来赞助你到家产物网址。

  长期以来测量检验 JavaScript 平昔都令人不甚厌烦。说到来,测量试验任何代码都以令人嫌恶的,但又却是每种开垦者应该做的政工。每种开荒者好似总是对此不屑,忽略掉针对它们的代码的测量试验专门的学业。 今后有了痊瘉这种嫌恶的主意了,那正是 Mocha 和 Chai。而八个库都是美味的热饮命名,都能帮忙您测量检验代码,可是方式各异而已。

哪些时候使用 Grunt?假使您赏识写配置文件,况且不在意任务运行时期产生中间文件时。

  Mocha 是二个 JavaScript 测验框架,它使得针对你的node模块或然浏览器接纳中的异步代码的测量检验变得轻巧起来。Mocha 测量试验能够串起来运维,并且对于针对合适的测量检验案例开展特别追踪的身分不错。

哪些时候使用 Gulp?假若比较于写配置文件,你更赏识写代码,况且想要使用 node.js 的流媒体功用来越来越快的实施职务时。

  Chai 是七个作为使得开辟和测量试验驱动开荒的断言库,可与 Mocha 正官。它以一种可读性好的品格来说述您所要测验的东西,用起来简单。

Babel

  哪天利用 Mocha 和 Chai?用他们就对了! 请测验你的代码,让那么些世界变得更加好。

JavaScript 作为一门语言,发展地相当慢。二〇一六年夏日的 ECMAScript 发表了它的点不清在新型的浏览器中落到实处的新效率。假诺你想看看二零一六年的 ECMAScript 包容,你可以看看来自原 @kangax 的列表。你会开掘新星版本的 艾德ge,Firefox 和 Chrome,具备相通完全的包容性。

  Mocha GitHub:

咱们不是生存在一个宏观的世界。作为开辟职员,大家供给后续协理那贰个从没新型 JavaScript 本性的旧版浏览器。我们要推动互连网并提升我们的代码库。Babel 是三个 JavaScript 编写翻译器,能够将流行的 JavaScript 标准编写翻译成 ES5 宽容的 JavaScript,那样就同目的在于像 IE9 那样较老的浏览器上运营。它有部分插件,使得相当轻易的应用 React 去支付,以至动用部分口径之外的性状去付出。

  Mocha 当前版本: 2.3.3

怎么着时候使用 Babel?当你要使用新的 JavaScript 语言特色,相同的时间继续协理旧版浏览器时。

  Mocha 网站: mochajs.org

越来越多的Web开采推行

  Chai GitHub:

本文来源于 JavaScript 学习作品中微软技巧布道者和技术员的文山会海随笔之风姿浪漫,同期最佳的篇章里也蕴涵微软的 Edge 浏览器和新的 EdgeHTML 渲染引擎。

  Chai 当前版本: v3.4.1

咱俩激励大家测量试验跨浏览器和器具,举个例子微软的 Edge(Windows10 暗许的浏览器卡塔尔国

  Chai 网站: chaijs.com

小说来源:by Rami Sayar

  大家已经在这里份项目清单中归纳了 Mocha 和 Chai ,尽管不去把能够运营那一个测验也许恐怕能够设定持续集成测量试验的测量试验运维器拉进来的话,那么那份项目清单就不会是完好的。Karma 是一个用来扶植您在分裂的浏览器中机动运转你的测验的工具。它将会支持您在当下全体的浏览器上运转你的 Mocha 和 Chai 测量试验。

原版的书文链接:

  并不是各类浏览器都会运作于每一种平台之上,可是幸运的是有过多无偿的工具可供您用来测量检验其余的浏览器,能够在 浏览器截屏 上看大器晚成看。假若你是在 OS X 上运维以来,而且要测量试验的是 Edge 只怕 IE 的话,你就能够 免费 使用这些工具。

转载请评释来源:赐紫含桃城控件

  曾几何时使用 Karma?当你想要具备一个功能周密的测验套件,并像确定保证测量试验能在全部的浏览器上通过时。

有关草龙珠城

  GitHub:

赐紫荆桃城是全球控件行当总管,世界超过的集团应用定制工具、公司报表和商业智能实施方案提供商,为当先33.33%的五洲财富500强集团提供服务。

  当前版本: v0.13

  网站: karma-runner.github.io

  PhantomJS

  运营总体的浏览器来测验你的代码是要凝聚消耗内部存款和储蓄器和 CPU 的。PhantomJS 让你能够运维一个从头至尾的 WebKit —— Safari 和 以前版本的 Chrome 中的渲染引擎(今后是 Blink)。它能令你通过叁个 JavaScript API 来运转测验、截屏、模拟互连网以致自动的浏览页面。

  什么日期使用 PhantomJS ?当您供给开展更加多的测试、操作网页和模仿网络哀告的操作时。

  GitHub:

  当前版本: v2.0

  网站: phantomjs.org

  Grunt 和 Gulp

  创设用于生产条件的网址日常还涉嫌到有个别升格质量这上头的职责,像 JavaScript 和 CSS 的最小化,CoffeeScript/TypeScript 的编写翻译,单元测量检验,代码精短。大概你已经有了八个工具链,用于希图你临盆版本上的网址,而生龙活虎旦你还尚无的话,就能够想要具备三个像 Grunt 或许 Gulp 那样的职责运维器。它们都游人如织的插件,能为你的网址开展别的的转换,以使其能投入临盆情形。

  什么时候利用 Grunt?当您更愿意编写配置文件,而对于你的义务运营器会生成什么中间文件并不关怀时。

  Grunt GitHub:

  Grunt 当前版本: v0.4.5

  Grunt 网站: gruntjs.com

  曾几何时使用 Gulp?当你更愿意编写配置代码,而且想利用 node.js 的流管理本事完毕越来越快的职分实践时。

  Gulp GitHub:

  Gulp 当前版本: v3.9.0

  Gulp 网站: gulpjs.com

  Babel

  JavaScript 作为一门语言发展很便捷。ECMAScript 二〇一五在二零一八年夏天表露,而它的多多新特色正在好多新颖的浏览器中被完毕。纵然您想要精通有关浏览器对 ECMAScript 二零一六 包容消息,能够看看那个来自于 @kangax 的 表格 。你会小心到最新版本的 Edge,Firefox 和 Chrome 已经差相当少是一心的相称了。

  大家实际不是生存在三个完美的世界中。作为开采者,我们将会需求后续支持老版本的浏览器,它们不辜负有新颖和最佳的 JavaScript 成效特色。而笔者辈实在是想要发展大家的 web 并进步大家的代码库。Babel 正是叁个 JavaScript 编译器,它能够将新型的 JavaScript 标准编写翻译成兼容 ES5 的JavaScript,让您能够在 IE9 那么老的浏览器上运转它们。它富有一点插件,让使用 React 开垦特别便于,设置会动用那八个实际不是明媒正礼 (举例 ES7) 的组成都部队分的职能特色。

  哪天使用 Babel?当您想要使用新的 JavaScript 语言特色并且还要扶助老的浏览器时。

  GitHub:

  当前版本: 6.1.2

  网站: babeljs.io

  越来越多 Web 开垦的施行

  那篇小说是 web 开垦种类的后生可畏有些,来自于 Microsoft 技巧的传道者和技术员,内容都以有关实用的 JavaScript 学习、开源项目,还会有互操作性最棒试行那几个方面,包罗了 Microsoft Edge 浏览器和新的 艾德geHTML 渲染引擎 。

  大家慰勉你在有着的浏览器和设备,包涵作为 Windows 10 默许浏览器的 Microsoft Edge 上进展测量检验 —— 使用 dev.microsoftedge.com 上的无偿工具:

  扫描你的站点上的老式的库,布局难点以致可访问性

  下载无需付费的 Mac, Linux, 和 Windows 的虚拟机

  在具备的浏览器,包罗在 Microsoft Edge 上检查 Web 平台的气象

  在你和睦的装置上远程测量试验 Microsoft Edge

  更透顶了然大家的程序员和传道者:

  GitHub 上的编码实验室:跨浏览器测量检验和特等实行

  Microsoft Edge Web 大会 2016 (来自于我们的工程团队和 JS 社区)

  哇哦,我能在 Mac 和 Linux 上测试 IE 和 Edge 了! (来自于 Rey Bango)

  未有破话 Web 的进取的 JavaScript (来自于)

  能让 Web 立时起功用的 艾德ge 渲染引擎 (来自于 Jacob Rossi)

  使用 WebGL 发挥 3D 渲染的潜在的能量 (来自于 David Catuhe)

  托 管web 应用和web平台方面的翻新 (来自于 凯文 Hill 和 Kiril Seksenov)

  大家的社区开放源代码项目:

  vorlon.JS (多配备远程 JavaScript 测量检验)

  manifoldJS (铺排跨平台托管 Web 应用)

  babylonJS (让 3D 图形那么些事物更温柔)

  越来越多无需付费的工具和后端web开垦的事物:

  Linux, MacOS, 和 Window s 上接受的 Visual Studio Code

  尝试在 Azure Cloud 上 使用 node.JS 编写代码

本文由澳门新萄京官方网站发布于澳门新萄京赌场网址,转载请注明出处:库和工具,工具及其使用

关键词: