JavaScript 构造函数、实例对象、原型对象三者之间的关系

通过以下代码寻找一下构造函数、实例对象、原型对象


        function Star(uname, age) {
    
    
            this.uname = uname;
            this.age = age;
        }
        Star.prototype.sing = function() {
    
    
                console.log('我会唱歌');
            }
        var ld = new Star('老段', 19);
        console.log(ld);
        ld.sing();
        console.log(Star.prototype);

1.什么是构造函数

// Star 就是构造函数     
        function Star(uname, age) {
    
    
            this.uname = uname;
            this.age = age;
        }

2.什么是实例对象

            // new Star 是实例对象   只要new了就是实例对象
        var ld = new Star('老段', 19);
        console.log(ld);
        ld.sing();

3、什么是原型对象?


        //  Star.prototype.sing:是原型对象    因为每个构造函数里边都有一个prototype原型对象
        Star.prototype.sing = function() {
    
    
                console.log('我会唱歌');
            }

4.三者之间的关系是
在这里插入图片描述
个人总结:
1、先有构造函数,每个构造函数里边都有一个原型对象;构造函数可以通过prototype执行原型对象
2、原型对象prototype里边有一个constructor属性,它通过 constructor属性指回构造函数
3.通过构造函数(只要new一个构造函数)创建实例对象;实例对象有个属性__protto__通过它指向原型对象;实例对象还有个属性指回构造函数__protto__.constructor.

猜你喜欢

转载自blog.csdn.net/qq_48203828/article/details/130839205