原型继承:把 父元素 作为子对象构造函数的原型
Son.prototype = father
可选:原型继承之后,由于父元素覆盖原来 子对象构造函数原型,就会导致constructor消失
解决办法:手动添加。(对开发几乎没有影响,也可以不加)
Son.prototype.constructor = Son
1.原型链:每一个对象都有自己的原型,而原型也是对象,也会有自己的原型,以此类推形成链式结构。称之为原型链。(原型链的终点是null)
2.对象访问原型链规则:就近原则
对象先访问自己的,自己没有就找原型的,原型没有就找原型的原型,一直到原型链终点null。
如果还找不到,属性则获取undefined,方法则会报错 xxx is not function