JS实现继承

来源:互联网 发布:linux 文件内容替换 编辑:程序博客网 时间:2024/05/20 12:46

面试遇到的一道题,以为自己掌握得很牢固,其实渣渣,现在回过头来总结一下。

定义两个类,vehicle类,car类,vehicle类有两个方法,drive方法和stop方法,car类的drive方法继承自vehicle,stop方法是自己的方法,如何实现。

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script></head><body></body><script type="text/javascript">function Vehicle(){this.drive = function(){alert("vehicle-drive");}this.stop = function(){alert("vehicle-stop");}}function Car(){//第一种方法,利用函数继承,是将整个函数赋给一个中间变量,然后执行这个方法,然后重写了stop函数。// this.temp = Vehicle;// this.temp();//第三种方法,利用call或者apply,两者只是参数的形式不同。Vehicle.call(this);this.stop = function(){alert("car-stop");}console.log(this);}//第二种方法,利用prototype继承// Car.prototype = new Vehicle();var car = new Car();car.drive();car.stop();</script></html>


0 0