JS继承机制的深入理解--动态原型存在的问题与解决
准备知识:
构造函数:即是函数也是类,当new 构造函数时,它就是类;当直接使用构造函数名时,它就是普通函数的调用。那是不是所有的函数都可以是构造函数?本人觉得是,语法上没错,但要理解函数最初始创建的目的是作为普通函数还是为了创建对象。
对象原型:对象创建(new)时所依赖的模板,简单来说就是模板里面的原型属性(方法)是所有对象共享的。注意,原型的引用(prototype)默认指向的是一个new Object()对象;改变默认指向:类名(构造函数名).prototype = new 类名()。
继承机制的实现:http://www.w3school.com.cn/js/pro_js_inheritance_implementing.asp,这里讲得还是比较简单清楚的。
类定义的方法:http://www.w3school.com.cn/js/pro_js_object_defining.asp,请注意动态原型方式