关键点:在SuperType构造函数中代码this.colors=["red","blue","green"];实际上也会向单独的原型链继承那样,将colors数组添加到SubType的原型对象中去,但是借用构造函数在执行时会将colors数组直接添加给实例,所以,访问colors数组时,根据原型链的搜索机制,在实例中的colors数组一旦被搜索到,就不会继续沿着原型链向上搜索了(屏蔽作用)。因此最终instance1的colors的改变并不会影响到instance2的colors数组的改变(两者的colors数组都来自实例本身而不是原型对象)。
JavaScript之继承(原型链)(4)
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://www.heiqu.com/972240e13829253a2a9eebda32ccc654.html