JavaScript特点、优缺点及常用框架
原文来自: https://blog.csdn.net/system_err/article/details/76590524
“自己整理了一份最全面前台学习资料,从最基础的HTML+CSS+JS [炫酷特效,游戏,插件封装,设计模式]到手机端HTML5的项目实战的学习资料都有整理,送给每一位前台小伙伴, 有想学习web前台的,或者是转行,或者是大学生,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。”
加Q 裙:956940552(招募中)
1.什么是JavaScript
JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具备相对安全性的用户端脚本语言。同时也是一种广泛用于用户端Web开发的脚本语言,常用来给HTML网页增加动态功能,比方响应客户的各种操作。它最初由网景公司(Netscape)的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。
2.JavaScript的特点
(1).一种解释性执行的脚本语言。
同其余脚本语言一样,JavaScript也是一种解释性语言,其提供了一个非常方便的开发过程。JavaScript的语法基本结构形式与C、C++、Java十分相似。但在使用前,不像这些语言需要先编译,而是在程序运行过程中被逐行地解释。JavaScript与HTML标识结合在一起,从而方便客户的使用操作。
(2).一种基于对象的脚本语言。
其也可以被看作是一种面向对象的语言,这意味着JavaScript能运用其已经创立的对象。因而,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
(3).一种简单弱类型脚本语言。
其简单性主要表现在:首先,JavaScript是一种基于Java基本语句和控制流之上的简单而紧凑的设计,从而对于使用者学习Java或者其余C语系的编程语言是一种非常好的过渡,而对于具备C语系编程功底的程序员来说,JavaScript上手也非常容易;其次,其变量类型是采用弱类型,并未使用严格的数据类型。
(4).一种相对安全脚本语言。
JavaScript作为一种安全性语言,不被允许访问本地的硬盘,且不能将数据存入服务器,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或者动态交互。从而有效地防止数据的丢失或者对系统的非法访问。
(5).一种事件驱动脚本语言。
JavaScript对客户的响应,是以事件驱动的方式进行的。在网页(Web Page)中执行了某种操作所产生的动作,被称为“事件”(Event)。例如按下鼠标、移动窗口、选择菜单等都可以被视为事件。当事件发生后,可能会引起相应的事件响应,执行某些对应的脚本,这种机制被称为“事件驱动”。
(6).一种跨平台性脚本语言。
JavaScript依赖于浏览器本身,与操作环境无关,只需计算机能运行浏览器,并支持JavaScript的浏览器,即可正确执行,从而实现了“编写一次,走遍天下”的梦想。
因而,JavaScript是一种新的形容语言,其可以被嵌入到HTML文件中。JavaScript语言可以做到响应使用者的需求事件(例如表单的输入),而不需要任何的网络来回传输资料。所以当一位使用者输入一项资料时,此资料数据不用经过传给服务器(server)解决再传回来的过程,而直接可以被用户端(client)的应用程序所解决。
3.JavaScript的优缺点
(1).JavaScript的优点:
<1>.JavaScript减少网络传输。
在JavaScript这样的客户端脚本语言出现之前,传统的数据提交和验证工作均由客户端浏览器通过网络传输到服务器上进行。假如数据量很大,这对于网络和服务器的资源来说实在是一种无形的白费。而使用JavaScript即可以在用户端进行数据验证。
<2>.JavaScript方便操纵HTML对象。
JavaScript可以方便地操纵各种页面中的对象,客户可以使用JavaScript来控制页面中各个元素的外观、状态甚至运行方式,JavaScript可以根据客户的需要“定制”浏览器,从而使网页更加友好。
<3>.JavaScript支持分布式运算。
JavaScript可以使多种任务仅在客户端即可以完成,而不需要网络和服务器的参加,从而支持分布式的运算和解决。
(2).JavaScript的局限性:
<1>.各浏览器厂商对JavaScript支持程度不同。
目前在互联网上有很多浏览器,如Firefox、Internet Explorer、Opera等,但每种浏览器支持JavaScript的程度是不一样的,不同的浏览器在浏览一个带有JavaScript脚本的主页时,因为对JavaScript的支持稍有不同,其效果会有肯定的差距,有时甚至会显示不出来。
<2>.“Web安全性”对JavaScript少量功能牺牲。
当把JavaScript的一个设计目标设定为“Web安全性”时,就需要牺牲JavaScript的少量功能。因而,纯粹的JavaScript将不能打开、读写和保存客户计算机上的文件。其有权访问的唯一信息就是该JavaScript所嵌入的那个Web主页中的信息,简言之,JavaScript将只存在于它自己的小小世界—Web主页里。
4.常用JS框架详情及其优缺点
(1).Jquery?
<1>.详情
JQuery 是一款同 prototype 一样优秀 js 开发库类,特别是对 css 和 XPath 的支持,使我们写 js 变得更加方便!假如你不是个 js 高手又想写出优秀的 js 效果,那么 JQuery 可以帮你达到目的!并且简介的语法和高的效率一直是jQuery追求的目标。?
<2>.优点:注重简介和高效,js 效果有 yui-ext 的选择,由于 yui-ext 重用了很多 jQuery 的函数
<3>.缺点:据说太嫩,历史不悠久。
(2).EXT
<1>.详情
基于 Yahoo UI 的扩展包 yui-ext 是具备 CS 风格的 Web 客户界面组件,能实现复杂的 Layout 布局,界面效果可以和 backbase 媲美,而且使用纯 javascript 代码开发。真正的可编辑的表格 Edit Grid,支持 XML 和 Json 数据类型,直接可以迁入 Grid。许多组件实现了对数据源的支持,例如动态的布局,可编辑的表格控件,动态加载的 Tree 控件、动态拖拽效果等等。从 1.0 beta 版开始同 Jquery 合作,推出基于 jQuery 的 Ext 1.0,提供了更多有趣的功能。
<2>.优点:结构化,相似于 java 的结构,清晰明了,底层用到了 Jquery 的少量函数,使整合使用有了选择,最重要的一点是界面太让让人震撼了。
<3>.缺点:太过复杂,整个界面的构造过于复杂。
(3).Dojo
<1>.详情
Dojo 是目前最为强大的JS框架,它在自己的 Wiki 上给自己下了一个定义,Dojo 是一个用 JavaScript 编写的开源的DHTML工具箱。Dojo 很想做一个“大一统”的工具箱,不仅仅是浏览器层面的,野心还是很大的。Dojo 包括 Ajax、Browser、Event、Widget 等跨浏览器 API,包括了 JS 本身的语言扩展,以及各个方面的工具类库,和比较完善的 UI 组件库,也被广泛应用在很多项目中,他的 UI 组件的特点是通过给 HTML 标签添加 TAG 的方式进行扩展,而不是通过写 JS 来生成,Dojo 的 API 模仿 Java 类库的组织方式。用 Dojo 写 Web OS 可谓非常方便。Dojo 现在已经 4.0 了,Dojo 强大的地方在于界面和特效的封装,可以让开发者快速构建少量兼容标准的界面。
<1>.优点:库相当完善,发展时间也比较长,功能强大,据说利用 Dojo 的 io.bind() 可以实现 comet 看见其功能强大非一般,得到 IBM 和 SUN 的支持。
<2>.缺点:文件体积比较大,200多KB,首次下载相当慢,此外,Dojo 的类库使用显得不是那么易用,JS语法加强方面不如 Prototype
(4).Prototype
<1>.详情
它是一个非常优雅的 JS 库,定义了 JS 的面向对象扩展,DOM 操作API,事件等等,以 Prototype 为核心,形成了一个外围的各种各样的 JS 扩展库,是相当有前途的 JS 底层框架,值得推荐,感觉也是现实中应用最广的库类(RoR 集成的 AJAX JS 库),之上还有 Scriptaculous 实现少量JS组件功能和效果。
<2>.优点:基本底层,易学易用,甚至是其余少量js特效开发包的底层,体积算是最小的了。
<3>.缺点:假如说缺点,可能就是功能是他的弱项
(5).dScriptaculous
<1>.详情
Scriptaculous 是基于prototype.js 框架的 JS 效果。包含了 6 个 js 文件,不同的文件对应不同的 js 效果,所以说,假如底层用 prototype 的话,做js效果用 Scriptaculous 那是再合适不过的了,连大名鼎鼎的 digg 都在用他,可见不一般
<2>.优点:基于prototype 是最大的优点,因为使用 prototype 的广泛性,无疑对客户书锦上添花。
<3>.缺点:刚刚兴起,需要时间的磨练
(6).Mochikit
<1>.详情
MochiKit 自称为一个轻量级的 js 框架。MochiKit 主要受到 Python 和 Python 标准库提供的很多便利之处的启发,另外还缓解了浏览器版本之间的不一致性。其中的 MochiKit.DOM 尤其方便,能够以比原始 JavaScript 更友好的方式解决 DOM 对象。MochiKit.DOM 大部分都是针对 XHTML 文档定制的,假如与 MochiKit 和 Ajax 结合在一起,使用 XHTML 包装的微格式尤其方便。Mochikit 可以直接对字符串或者者数字格式化输出,比较实用和方便。它还有自己的 js 代码解释器
<2>.优点:MochiKit.DOM 这部分很实用,简介也是很突出的
<3>.缺点:轻量级的缺点
(7).Mootools
<1>.详情
MooTools 是一个简洁,板块化,面向对象的 JavaScript 框架。它能够帮助你更快,更简单地编写可扩展和兼容性强的 JavaScript 代码。Mootools 跟 prototypejs 相相似,语法几乎一样。但它提供的功能要比 prototypejs 多,而且更强大。比方添加了动画特效、拖放操作等等。
<2>.优点:可以定制自己所需要的功能,可以说是 prototypejs 的加强版。
<3>.缺点:不大不小,具体应用具体分析。
(8).Moo.fx
<1>.详情
Moo.fx是 一个超级轻量级的 javascript 特效库(7k),能够与 prototype.js 或者mootools 框架一起使用。它非常快、易于使用、跨浏览器、符合标准,提供控制和修改任何 HTML 元素的 CSS 属性,包括颜色。它内置检查器能够防止客户通过屡次或者疯狂点击来破坏效果。moo.fx整体采用板块化设计,所以可以在它的基础上开发你需要的任何特效。
<2>.优点:小块头有大能耐
<3>.缺点:这么小了,已经不错了
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » JavaScript特点、优缺点及常用框架