已采纳回答 / 时间是个魔鬼 抛开你截图的代码(倒数第二行并不能得到你想要的原型链...), 按你的文字描述foo.g=5的g是foo的自有属性,也就是foo.hasOwnProperty("g")===true;foo.hasOwnProperty("z")===false;使用 var obj = new foo() 这种继承方式会把foo.prototype上的属性直接挂到obj.__proto__上,这种方式和Object.create([Object])继承原理是不同的,老师后面的课程应该会有介绍。