jQuery网页特效设计基础教程(慕课版·第2版)
上QQ阅读APP看书,第一时间看更新

1.4 JavaScript库

1.4.1 什么是JavaScript库

JavaScript库

JavaScript库是指可以方便地应用到现有Web开发体系中的、现成的JavaScript代码资源,包含工具、函数库、约定以及从常用任务中抽象出的可以复用的通用模块。JavaScript库能帮助使用者轻松地建立具有高难度交互的Web 2.0特性的富客户端页面,并且兼容各大浏览器。它们通常由开源社区开发和维护,并被各大公司支持和使用。

大多数JavaScript库都提供了以下功能:命名空间支持、JavaScript可用性增强工具、用户界面组件、拖放组件、视觉效果和动画、布局管理工具、元素样式操作、AJAX支持、DOM(Document Object Model,文档对象模型)支持、事件处理增强工具、操作日志和调试功能、单元测试架构等。这些功能都是在Web开发中经常用到的,并且基于JavaScript库的应用程序可以获得更好的浏览器兼容性和更高的开发效率,同时可以提供更多的功能和效果。使用JavaScript库可以大幅度地提高开发效率,增强应用程序的性能,丰富应用程序的功能,改善用户体验。

1.4.2 常用的JavaScript库

目前,常用的JavaScript库有jQuery、Vue、AngularJS、React、Prototype、Ext JS、Dojo、YUI、MooTools等,下面进行简单介绍。

1.jQuery

本书的主题jQuery是继Prototype之后又一个优秀的轻量级JavaScript库。它是一个快速和简洁的JavaScript库,拥有强大的选择器,可以简化HTML文档元素的遍历、事件处理、动画和AJAX交互,实现快速Web开发。jQuery还拥有完善的兼容性和链式操作等功能,它的这些优点吸引了众多开发人员。

2.Vue

Vue是由华人程序员尤雨溪(Evan You)开发的一个JavaScript库,并且在国内外都受到开发人员的青睐。它是一个构建用户页面的渐进式框架,与其他重量级框架不同的是,Vue采用自底向上增量开发的设计,Vue的核心库只关注视图层,提供数据驱动的组件以及简单、灵活的API(Application Program Interface,应用程序接口),并且非常容易学习、非常容易与其他库或已有项目整合。

3.AngularJS

AngularJS是一个用JavaScript编写的库,它可通过<script>标记添加到HTML页面中。AngularJS通过指令扩展了HTML,并且通过表达式绑定数据到HTML,是一个优秀的前端JavaScript框架。AngularJS有着诸多特性,其中最为核心的特性是:模块化、自动化双向数据绑定、语义化标签、依赖注入等。

4.React

React是一个用于构建用户界面的JavaScript库。由于React的设计思想极其独特,属于革命性创新,性能出众,代码逻辑却非常简单,所以越来越多的人开始关注和使用它,认为它可能是将来Web开发的主流工具。

5.Prototype

Prototype是最早成型的JavaScript库之一,它的特点是功能实用且容量较小。它定义了JavaScript面向对象扩展、DOM操作API、事件等,非常适合在中小型Web应用中使用。Prototype库极大地简化了JavaScript代码的编写工作,同时兼容各种浏览器。

6.Ext JS

Ext JS通常称为Ext,是一个非常优秀的JavaScript库,可以用来开发具有绚丽外观的富客户端应用。使用Ext开发的多彩页面吸引了许多程序员的眼球,同时也吸引了众多用户,对于开发企业应用系统来说,Ext非常实用。但Ext体积较大,导致页面加载速度比较慢;此外,Ext并不是完全免费的,如果用于商业用途,是需要付费获得授权许可的。

7.Dojo

Dojo是一个强大的、面向对象的JavaScript库。它主要由三大模块组成:Core、Dijit、DojoX。Core提供了构建Web应用必需的几乎所有基础功能。Dijit是一个可更换皮肤且基于模板的Web UI(User Interface,用户界面)控件库。DojoX包括一些创新的代码和控件:DataGrid、Chart、离线应用、跨浏览器矢量绘图等。Dojo功能强大、组件丰富,采用面向对象的设计,有统一命名空间和管理机制,适用于企业级或复杂的大型Web应用开发。它的缺点是比较复杂。但Dojo仍然是一个很有发展潜力的JavaScript库。

8.YUI

YUI是一个使用JavaScript编写的工具和控件库。它是利用DOM脚本、DHTML(Dynamic HTML,动态HTML)和AJAX构造的具有丰富交互功能的Web程序。YUI的许多组件实现了对数据源的支持。

9.MooTools

MooTools是一个轻量、简洁、模块化、面向对象的开源JavaScript库。MooTools的语法几乎和Prototype的一样,但MooTools却提供了更强大的功能、更好的扩展性和兼容性。它的模块化思想优秀,各模块代码非常独立,最小的核心模块只有8KB。其最大的优点是可选择使用哪些模块,用的时候只导入使用的模块即可。MooTools完全贯彻了面向对象的编程思想,并且语法简洁、文档完善,是一个非常优秀的JavaScript库。