widget里面的抽象方法根本没什么意义啊,因为子类根本无法强制实现,也就是说,你在父类中定义了抽象方法,我子类就是不实现,你拿我没辙,又或者,子类根本不知道我要去实现哪些抽象方法,不像别的语言会强制实现父类的抽象方法,更何况js中根本没有抽象方法的概念,唯一能做的就是在开发文档中要求子类去实现哪些方法,这样就根本不需要父类中定义抽象方法
2016-06-01
最赞回答 / 慕粉3277234
对象原型链上的属性是可访问(如果在对象上没有同名属性覆盖的话)但不可写的(要是写的话会在当前对象新增一个属性)DOM上加的事件又不会加到handlers里面,handlers里面都是我们手工添加进去的。render方法里写的this.handlers = {};并不是去修改这个对象原型链里的属性值,而是在对象本地新加了一个handlers属性。防止我们在on里面把添加的handler写到原型链的handlers属性里去。
2016-05-10