javascrip关于继承的小例子
//继承
function Person(name,sex)
{
this.name=name;
this.sex=sex;
}
Person.prototype.sayName=function()
{
alert(this.name);
}
Person.prototype.saySex=function()
{
alert(this.sex);
}
function Worker(name,sex,job)
{
//继承person类
Person.call(this,name,sex) //这里的this指的是Worker类的实例,如下面的'W' ,把W传入Person构造函数,这时W伪装成Person构造函数里的this
this.job=job;
}
//Worker.prototype=Person.prototype;//如果这样负值原型,子类的sayJob方法Person父类也会有sayJob方法,因为是引用传递
//改成如下方式则子类不会影响父类:
for(var i in Person.prototype)
{
Worker.prototype[i]=Person.prototype[i];
}
Worker.prototype.sayJob=function()
{
alert(this.job);
}
var p=new Person('lisi','男');
//alert(p.sayJob);
var w=new Worker('zhangsan','男','打酱油的');
w.sayName();
w.saySex();
w.sayJob();
相关文章
javascript getBoundingClientRect() 来获取页面元素的位置的代码[修正版]
该方法已经不再是IE Only了,FF3.0+和Opera9.5+已经支持了该方法,可以说在获得页面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必须通过循环来获得元素在页面中的绝对位置。2009-05-05
ES6中let、const的区别及变量的解构赋值操作方法实例分析
这篇文章主要介绍了ES6中let、const的区别及变量的解构赋值操作方法,结合实例形式分析了ES6中let、const的功能、原理、使用方法及数组、字符串、函数参数等解构赋值相关操作技巧,需要的朋友可以参考下2019-10-10
javascript当onmousedown、onmouseup、onclick同时应用于同一个标签节点Element
先通过一个简单例子测试并发现我说的问题,让你有个直观的印象,再接着看我的解决办法。2010-01-01


最新评论