javascript 原型 ,原型链

   1. 原型prototype

每个函数被创建的时候都会有一个prototype属性,这个属性会指向函数的原型对象。默认情况下每个原型对象又都会获取一个constructor属性,这个属性包含一个指向prototype属性所在函数的指针。

function Person()
		 {
		 	
		 }
		  
		  console.log(Person.hasOwnProperty("prototype"));
		  console.log(Person.prototype)


    2  原型对象 

 首先,每个函数被创建的时候都会有一个prototype属性,prototype的值是一个对象。这个对象就是这个析构函数的原型对象,这个对象上面的方法和属性可以被实列所访问到。通过 prototype可以设置和访问原型对象上的方法。

 function Person()
		 {
		 	
		 }
		  //console.log(typeof Person.prototype)//Object
		      Person.prototype.name="哈哈";
		   //console.log(Person.prototype.name)//哈哈
		   //delete Person.prototype.name;//也可以删除属性
		    //console.log(Person.prototype);
 Array.prototype.sort=function()
		    {
		    	return "方法被改写了";
		    }
		    var a=[1,2,3];
		    var newarr=a.sort();
		    console.log(newarr)
		    

 

 3 原型链 

说原型链 ,就先说原型对象,实列可以访问到原型对象上的方法,和属性,如果该原型对象上没有实列所访问的对象或者方法, 那么实列就会去该原型对象.__proto__所指的原型对象上去找。

 function person()
		 {
		 }
		 function student()
		 {
		 }
		 student.prototype.__proto__=person.prototype;
		 //person.prototype.name="haha";
		 //student.prototype.name="ha"
		 var stu=new student();
		 console.log(stu.name);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值