嗯嗯,确实,如果从内存空间的角度来讲,确实会浪费很大的内存空间.但是如果增加一个Middle构造函数作为中间层的话,原型链不是多了一层吗?假设ChinesePelple实例如果找一个方法,实例本身--> ChinesePelple.prototype(也就是new Middle())-->People.prototype。可以理解为您中间加一个Middle层的目的是为了少开辟一个对象空间吧,另一个作用是为了不影响通过People new出来的实例吧,所以必须给People.prototype重新赋值