Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > javascript的prototype
【标  题】:javascript的prototype
【关键字】:javascript,prototype
【来  源】:http://www.blogjava.net/tim-wu/archive/2006/04/24/42783.html

javascript的prototype

Your Ad Here 最近有些朋友一直问起prototye是什么,偶一直不怎么做javascript开发,只能简单说说自己的理解。

javascript其实不是严格意义的OO语言,至少他没有很好地实现封装和继承,甚至javascript使用的是function式对象。

因此,javascript有一个奇怪的东西就是prototype,javascript中约定了每个对象都可以包含一个prototype对象的引用(属性),
这个prototype对象在运行时是不可见的,也就是说,定义了之后,你无法直接使用prototype对象。

那么,prototype对象有什么用呢?它的作用,就是当你去调用一个对象的函数或属性时,javascript首先会在这个对象的定义中查找,如果找不到,
他就会去找这个对象的prototype对象有没有这个定义,如果还找不到,他又会去找prototype对象的prototype,一直到对象没有prototype定义为止。

是不是和函数继承的目的很象?这就是javascript的原型继承特性。
但是我们也看出了,这种查找方式,效率非常之低,尤其在prototype链很长的情况下。javascript 2.0会对此有所改进。

另外,prototype的定义方式也很奇怪,他必须以一个对象实例(而不是类)的形式,绑定到其他类上。记得吗?prototype是定义时的,同时又是对象。

例子:
?? ?o1 = function(){};
?? ?o2 = function(){};
??? o2.prototype = new o1;??

如果嫌直接使用prototype挺麻烦,你可以去下载一个prototype.js来用,这个封装真的挺不错:)

OpenCms 中模板的示例,详细的注释,相信大家都能看懂.这个算我上面文章的一个补充吧.:【上一篇】
悄悄潜入了某知名开源项目springside:【下一篇】
【相关文章】
  • 值得收藏!javascript技巧大全
  • (Javascript)prototype的一个优势也是缺点
  • JavaScript判断上传文件类型
  • JavaScript Associative Arrays
  • 常用的几个javascript语句
  • javascript数组运用-解决多个单选框状态检查
  • javascript代码收集
  • 如何用javascript来实现autocomplete
  • 侃侃JavaScript Template
  • SVG + Javascript + ASP.NET + WebService开发楼宇管理系统(六)
  • 【随机文章】
  • 智能ABC输入法窍门大放送(转)
  • 我刚毕业那会
  • Underdstanding Complex Declarations in C/C++
  • struts的流程
  • rootkit检测器Vs黑客守卫者
  • Asynchronous Pluggable Protocol也被流氓软件用来弹出广告了……
  • J2ME中文教程 3 MIDP高级UI 的使用
  • 快捷键之快捷键
  • 身为开发人员的您,准备好迎接Widows Mobile 6了吗?
  • 移动厂商欲建立世界首个全球性Linux移动平台
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.