Prototype框架详解


Posted in Javascript onNovember 25, 2015

这里所说的“Prototype”不是JavaScript编程中的原型(“prototype”),而是由“Sam Stephenson”写的一个JavaScript类库。这个构思奇妙,而且兼容标准的类库,能帮助程序员轻松建立有高度互动的“web2.0”特性的富客户端页面。

•很多人初次接触Prototype,都是从其“$”系列函数开始的,这些类似于桌面应用程序的快捷方式,是Prototype框架中使用频率最高的一组函数。此外,Prototype对Ajax的支持也是让开发人员很感兴趣的地方。当然Prototype的功能并不仅限于此,其对JavaScript内置对象进行了大量的扩展,同时也定义了很多新的对象。

prototype框架的简介:

•Prototype是目前应用最为广泛的Ajax开发框架,其的特点是功能实用而且尺寸较小,非常适合在中小型的Web应用中使用。开发Ajax应用需要编写大量的客户端JavaScript脚本,而Prototype框架可以大大地简化JavaScript代码的编写工作。更难得的是,Prototype具备兼容各个浏览器的优秀特性,使用该框架可以不必考虑浏览器兼容性的问题。

•Prototype对JavaScript的内置对象(如“String”对象、“Array”对象等)进行了很多有用的扩展,同时该框架中也新增了不少自定义的对象,包括对Ajax开发的支持等都是在自定义对象中实现的。Prototype可以帮助开发人员实现以下的目标:

•(1)对字符串进行各种处理
•(2)使用枚举的方式访问集合对象
•(3)以更简单的方式进行常见的DOM操作
•(4)使用CSS选择符定位页面元素
•(5)发起Ajax方式的HTTP请求并对响应进行处理
•(6)监听DOM事件并对事件进行处理 

•“Prototype”框架功能详解—使用实用函数

“Prototype”框架的实现仅仅包含一个JavaScript即可,1.6版本的“Prototype.js”的文件大小为127K字节,约4220行。在页面中应用的语法类似于:

•<script type=”text/javascript” src=”inc"js"Prototype.js” ></script>

•然后就可以在后继的脚本中享受该框架带来的便利了。

•该框架中有很多预定义的对象和实用函数,可以将程序员从重复的打字中解放出来。

•(1)使用“$()”函数。
•(2)使用“$F()”函数。此函数是另一个大收欢迎的“快捷键”,能用于返回任何表单输入控件的值,比如多行文本框和下拉列表框等控件。此个方法也能用元素id或元素本身做为参数。
•(3)使用“$A()”函数。此函数能将其接收到的单个的参数转换成一个Array对象。
•(4)使用“$H()”函数。此函数把一些对象转换成一个可枚举的和联合数组类似的Hash对象。
•(5)使用“$R()”函数。此函数是“new ObjectRange(lowBound,upperBound,excludeBounds)”的缩写,用于建立一个范围对象。
•(6)使用“Try.these()”函数。“Try.these()”方法用于调用不同的方法直到其中的一个成功。此函数把一系列的方法作为参数,并且按顺序的一个一个的执行这些方法,直到其中的一个成功执行。返回成功执行的那个方法的返回值。“Try.these()”函数可以用于处理兼容性问题。

Javascript 相关文章推荐
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
Apr 27 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
Jun 26 Javascript
js原生appendChild的bug解决心得分享
Jul 01 Javascript
gridpanel动态加载数据的实例代码
Jul 18 Javascript
setTimeout自动触发一个js的方法
Jan 15 Javascript
使用node.js 制作网站前台后台
Nov 13 Javascript
react-router4按需加载(踩坑填坑)
Jan 06 Javascript
新手快速上手webpack4打包工具的使用详解
Jan 28 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
Apr 22 Javascript
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
May 28 Javascript
Vue商品控件与购物车联动效果的实例代码
Jul 21 Javascript
Postman动态获取返回值过程详解
Jun 30 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
Nov 25 #Javascript
Bootstrap每天必学之下拉菜单
Nov 25 #Javascript
使用Javascript写的2048小游戏
Nov 25 #Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 #Javascript
Bootstrap每天必学之栅格系统(布局)
Nov 25 #Javascript
jQuery实现宽屏图片轮播实例教程
Nov 24 #Javascript
jquery利用拖拽方式在图片上添加热链接
Nov 24 #Javascript
You might like
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
自己写了一个php检测文件编码的函数
2014/04/21 PHP
Linux系统中为php添加pcntl扩展
2016/08/28 PHP
Javascript 更新 JavaScript 数组的 uniq 方法
2008/01/23 Javascript
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
3个可以改善用户体验的AngularJS指令介绍
2015/06/18 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】
2016/08/19 Javascript
Ubuntu 16.04 64位中搭建Node.js开发环境教程
2016/10/19 Javascript
实现JavaScript高性能的数据存储
2016/12/11 Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
2016/12/31 Javascript
jquery ui sortable拖拽后保存位置
2017/04/27 jQuery
JS实现的简单标签点击切换功能示例
2017/09/21 Javascript
vue获取DOM元素并设置属性的两种实现方法
2017/09/30 Javascript
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
微信小程序实现注册登录功能(表单校验、错误提示)
2019/12/10 Javascript
微信小程序scroll-view的滚动条设置实现
2020/03/02 Javascript
一个超级简单的python web程序
2014/09/11 Python
Python 实现文件的全备份和差异备份详解
2016/12/27 Python
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
python 列表转为字典的两个小方法(小结)
2019/06/28 Python
python验证码图片处理(二值化)
2019/11/01 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
python实现最短路径的实例方法
2020/07/19 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
python爬虫爬取某网站视频的示例代码
2021/02/20 Python
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
工程材料采购方案
2014/05/18 职场文书
员工廉洁自律承诺书
2014/05/26 职场文书
伦敦奥运会的口号
2014/06/21 职场文书
个人收入证明模板
2014/09/18 职场文书
卫生主题班会
2015/08/14 职场文书
如何利用python和DOS获取wifi密码
2021/03/31 Python
Javascript中async与await的捕捉错误详解
2022/03/03 Javascript