3。重载
或许这个是oop编程中比较复杂的地方了,在javascript的实现中有点无奈,也就是通过prototype的方式来完成的,不过因为我不清楚如何调用父类的实现函数,那么在重载中只能够重新编写所有的实现了,另外就是在实现中实例化一个父类,然后通过调用它来返回需要的东西。
javascript中所有的对象都是从object继承下来的,object提供了tostring()的方法,也就是说如果调用alert(objinstance)这样的过程,实际上是调用了alert(objinstance.tostring())的方法,如果没有编写实现,object默认的tostring()都是"object object"这样子的,在许多地方需要重载这个函数的,比如timer,如果我们希望var ins=new timer(5);alert(ins)调用得到的是interval的值5,那么就需要重新编写tostring()方法了
timer.prototype.tostring=function(){ return this.interval};