console.log(Object.__proto__ === Function.prototype);//true console.log(Function.__proto__ === Function.prototype);//true console.log(Object.__proto__ === Function.__proto__);//true console.log(Function.prototype.__proto__ === Object.prototype);//true function Fn() {} let fn = new Fn(); console.log(Fn.__proto__ === Function.prototype);//true console.log(Fn.prototype.__proto__ === Object.prototype);//true console.log(fn.__proto__ === Fn.prototype); //true console.log(fn.prototype); //undefined let c = new Object(); console.log(c.prototype); //undefined class MyObject { eat() {} } let obj = new MyObject(); console.log(obj.prototype); //undefined console.log(MyObject.prototype); // Object { constructor: class MyObject {} 和 eat: function eat() } console.log(MyObject.prototype.__proto__ === Object.prototype); //true let AObject = { strval: "hello", doWork() {} } console.log(AObject.prototype); //undefined