JS 面向对象实例 prototype

prototype:
当每创建一个类的实例的时候,都要执行一次构造函数,函数中的属性和方法总会被重复创建,prototype可以很好的解决。当new一个function时,该对象的成员将自动的赋给所创建对象。prototype发生在函数体(构造器)执行之前prototype的定义必须在new实例化对象之前,否则不会起作用。

< HTML >
< HEAD >
< TITLE > Test JavaScript Function example  </ TITLE >
</ HEAD >
< BODY >
< script >
var  userA;
var  userB;
function  User(name,age)
{
 
this .str_name  =  name;
 
this .str_age  =  age;
}

User.prototype.sayage  
=   function ()
{
 alert(
this .str_age);
}

function  testUser()
{
 userA 
=   new  User( " Tomseon " , " 27 " );
 userA.sayage();
 
// userA.sayme(); //Prototype definition must before new instance of the object, otherwise they would not work
 User.prototype.sayme   =   function ()
 {
  alert(
this .str_name);
 }
 userB 
=   new  User( " mike " , " 20 " );
 userB.sayage();
 userB.sayme();
}

 

</ script >

< input  type ="reset"  name ="Submit"  id ="Button1"  value ="testUser"  onclick ="testUser()" >  
</ BODY >
</ HTML >  

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值