第一种和第二种,为什么只有一方式可以输出?


第一种和第二种,为什么只有一方式可以输出?

 let Common = {
            show() {
                //一
                console.log("common.name" + this.name);
                //二
                // return "common.name" + this.name;
            },
        };
        let hd = {
            __proto__: Common,
            name: "hd.name",
            show() {
                super.show();
            },
        };
        let admin = {
            __proto__: hd,
            name: "admin.name",
            show() {
                super.show();
            },
        };
        //一
        admin.show();
        //二
        // console.log(admin.show());

 

 let Common = {
            show() {
                //一
                //console.log("common.name" + this.name);
                //二
                return "common.name" + this.name;
            },
        };
        let hd = {
            __proto__: Common,
            name: "hd.name",
            show() {
                return super.show(); //用return 把获取到的值返回给上一层。
            },
        };
        let admin = {
            __proto__: hd,
            name: "admin.name",
            show() {
                return super.show(); //用return 把获取到的值返回给上一层。
            },
        };
        //一
        //admin.show();
        //二
        console.log(admin.show());

 

return才是输出值,console.log只不过是在控制台打印而已