prototype 原型

//prototype 原型
String.prototype.caifen=function(){
alert(111);
}
var a='cc';
a.caifen();
setInterval();

1.构造函数
function Person(){

}
//2.原型对象
var obj=Person.prototype;
obj.name='zs';
obj.age=18;
obj.sayName=function(){
alert('我是');
}
3.实例对象
var p1=new Person();
alert(p1.name);
1.构造函数,原型对象,实例对象 三者之间的关系
//所有的实例对象可以去访问原型中的属性和方法
构造函数.prototype=原型对象
构造函数.prototype.constructor=构造函数:Person.prototype.constructor
//判断传进去的实例对象是不是某个原型的实例:
原型对象.isPrototype:alert(obj.isPrototypeOf(p1););
*******************************************************************************************************
//简单原型的使用方法
构造函数+原型实现的类
//父类
function Person(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
}
//原型对象
Person.prototype.sayName=function(){
alert(this.name);
}
Person.prototype.sayAge=function(){
alert(this.age);
}
var p1=new Person('zhangsan',20,'男');
var p2=new Person('zs',21,'男');
alert(p1.name)
alert(p2.name)
p1.sayName();
p2.sayName();






闭包:闭包就是可以读取其他函数内部的变量


****************************************************************************


原型继承
//父类
function Person(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
}
Person.prototype.sayName=function(){
alert(this.name);
}
//子类
function Son(sex){
this.sex=sex;
}
//原型继承 :让子类的原型对象 = 父类的实例
Son.prototype = new Person('zhangsan',18);
var p1=new Son();
alert(p1.name);


//借用构造函数式继承
//只继承我们的模板,不继承原型对象
function Person(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
}
Person.prototype.sayName=function(){
alert(this.name);
}
//子类
function Son(name,age,sex){
this.sex=sex;
}
var p1=new Son('zhangsan',18,'男');
alert(p1.name);
************************************************************
//组合继承
function Person(name,age,sex){
this.name=name;
this.age=age;
this.sex=sex;
}
Person.prototype.sayName=function(){
alert(this.name);
}
//子类
function Son(name,age,sex){
Person.call(this,name,age);
this.sex=sex;
}
Son.prototype=new Person();
var p1=new Son('zhangsan',18,'男');
alert(p1.name);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值