prototype ... function ok(){ }function init(){ ok1= new ok() ok1.f1=function(){alert(123)} ok.prototype.f1=function(){alert(321)} ok1.f1(); //大家看,这里创建的两个f1方法.有什么不一样的?}window.onload=init; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ok1.f1是针对ok类的具体实例定义的方法,仅作用于该实例。ok.f1是在类中定义的方法,作用于其所有实例。function ok(){ }function init(){ ok1= new ok() ok1.f1=function(){alert(123)} ok.prototype.f1=function(){alert(321)} ok1.f1(); ok2 = new ok(); ok2.f1();} ok1.f1=function(){alert(123)}它是为ok1加一个属性fl,这个f1只是ok1这个对像有ok.prototype.f1=function(){alert(321)}这句话话是为类的原型对象加的属性,不理解啥是原型对象没关系,关键是理解这样做有什么用,如果这句话执行了,那么用ok创建的所有对象都可以访问到f1这个属性。还要多一句嘴,对于javascript,当你访问对象的属性时,他会先在对象里面找是不是有这个属性,如果有,那么这会使用这个属性,如果没有,就会去在对象对应类的原型对象上去找,正因为这样,楼主这个程序最终会执行alert(123),如果你再创建一个对象ok2,调用ok2.f1()的话,这回会执行alert(321)简单的话,你可以把propotype对象理解成java里的静态属性,所有对象共用这个属性,但这还不够,就像java里可以重写方法一样,你还可以为对象添加属性去重写原型对象的属性,但这种重写只对当前对象有效。 函数显示不出来 求解 选中相应的单选按钮弹出相应的页面javascript代码怎么写? Ext 动态加载js后无法显示 panel的问题 这个用法没用过 问个JS的修改超链接的问题。 微软学生中心会员注册页的javascript效果怎么做 如何实现窗口的自动关闭? 如何在javascript中动态的向textarea中添加信息!(在线等待!) javascript:如何在关闭主窗口时,把所有已打开的子窗口一起关闭?? <input type="file">問題﹐感覺有bug﹗ js弹出窗口的问题 〓〓大家来看看这个金额格式化方法???〓〓
function ok()
{
}
function init()
{
ok1= new ok()
ok1.f1=function(){alert(123)}
ok.prototype.f1=function(){alert(321)}
ok1.f1();
ok2 = new ok();
ok2.f1();
}
它是为ok1加一个属性fl,这个f1只是ok1这个对像有
ok.prototype.f1=function(){alert(321)}
这句话话是为类的原型对象加的属性,不理解啥是原型对象没关系,关键是理解这样做有什么用,如果这句话执行了,那么用ok创建的所有对象都可以访问到f1这个属性。还要多一句嘴,对于javascript,当你访问对象的属性时,他会先在对象里面找是不是有这个属性,如果有,那么这会使用这个属性,如果没有,就会去在对象对应类的原型对象上去找,正因为这样,楼主这个程序最终会执行alert(123),如果你再创建一个对象ok2,调用ok2.f1()的话,这回会执行alert(321)简单的话,你可以把propotype对象理解成java里的静态属性,所有对象共用这个属性,但这还不够,就像java里可以重写方法一样,你还可以为对象添加属性去重写原型对象的属性,但这种重写只对当前对象有效。