问两个js的问题,百思不得其解。。。非常感谢
一
打算用this.xxx把原型对象函数封装在构造函数内。一个构造函数的时候没有任何问题,为什么写继承就报错说sub1的sayName没有定义?
二
为什么返回的总是rec1的属性?
function inheritPrototype(SubType,SuperType){
var prototype=Object.create(SuperType.prototype);
prototype.constructor=SubType;
SubType.prototype=prototype;
}
function SuperType(name){
this.name=name;
his.colors=["red","blue","green"];
if(this.sayName==undefined){
SuperType.prototype.sayName=function(){
alert(this.name);
};
}
}
function SubType(name,age){
SuperType.call(this,name);
this.age=age;
if(this.sayAge==undefined){
inheritPrototype(SubType,SuperType);
SubType.prototype.sayAge=function(){
alert(this.age);
};
}
}
SubType.prototype.test=function(){};
var sub1=new SubType("RRR",30);
var sub2=new SubType("KKK",95);
sub1.sayName();
sub2.sayAge();
打算用this.xxx把原型对象函数封装在构造函数内。一个构造函数的时候没有任何问题,为什么写继承就报错说sub1的sayName没有定义?
二
function Rectangle(x,y){
var x=x;
var y=y;
if(Rectangle.prototype.getX==undefined){
Rectangle.prototype.getX=function(){
return x;
};
Rectangle.prototype.getY=function(){
return y;
};
}
}
var rec1=new Rectangle(1,3);
var rec2=new Rectangle(99,100);
alert(rec1.getX());
alert(rec2.getY());
为什么返回的总是rec1的属性?
...全文
相关推荐
javascript:不要问问题
javascript:不要问问题
百思不得其解API文档
百思不得其解API文档,可以通过这里的API文档自己写一个应用程序。
js 实现 两个checkbox互斥问题
js 实现 两个checkbox互斥问题! 值得下载看看!资源免费,大家分享!!
如何用JS判断两个数字的大小
在JS的学习中,我们经常可能碰到这样的问题,本文用实例演示如何正确的用JS判断两个数字的大小。
用javascript实现计算两个日期的间隔天数
ASP 里面计算两个时间的差距可以 DateDiff,但 javascript 里面没有,需要手写函数。 js 里面居然可以直接 Date1-Date2,而且还是转换为毫秒计算时间差的。 代码如下:// 计算两个日期的间隔天数 function DateDiff(sDate1, sDate2){ //sDate1和sDate2是2002-12-18格式 var aDate, oDate1, oDate2, iDays aDate = sDate1.split(“-“) oDate1 = new Date(aDate[1] + ‘-‘ + aDate[2] + ‘-‘ + aDa


