码迷,mamicode.com
首页 > 编程语言 > 详细

javascript中的prototype(原型)认识

时间:2016-10-23 23:27:30      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:back   函数   reg   asc   new   int   size   c#   string   

prototype实现了对象与对象的继承,在JS中变量,函数,几乎一切都是对象,而对象又有_ptoro_属性,这个属性就是通常说的原型,是用来指向这个对象的prototype对象,prototype对象又有_proto_属性,就是这样依次递归,直到追溯到object对象。
1 function Person(name){
2                 this.name=name;
3                     };
4  Person.prototype.printName=function(){//通过给Person对象下的prototype赋一个printName成员,可以通过
5                 alert(this.name);//person对象的实例点出printName成员
6 }                               //prototype下是可以存变量,函数的,当一个对象dian出成员时,编译器会从对象的成员下遍历找出所需成员,如果没找到,会在对象的prototype对象下继续搜索成员,直到找到,否则将会返回出一个undefault错误

下面是利用prototype达到对对象原型链的操作:

替换全部

3 String.prototype.replaceAll = function(s1, s2) {
4     return this.replace(new RegExp(s1, "gm"), s2)
5 }//类似于C#中的扩展方法;利用prototype把replaceAll充当String的扩展方法,也可以理解成继承,添加属性。

清除空格

1 String.prototype.trim = function() {
2     var reExtraSpace = /^\s*(.*?)\s+$/;
3     return this.replace(reExtraSpace, "$1")
4 }给string的原型链上添加trim方法,

 

 

 


javascript中的prototype(原型)认识

标签:back   函数   reg   asc   new   int   size   c#   string   

原文地址:http://www.cnblogs.com/xiaoliangge/p/5991131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!