关于js原型对象与构造函数的解释

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_20535249/article/details/100511269

在这里插入图片描述

//构造函数
function CreatAPerson(name,age,sex){
    //返回一个init后的对象
    return new CreatAPerson.prototype.init(name,age,sex);
}

    //构造函数的原型
    CreatAPerson.prototype = {
        constructor:CreatAPerson,
        init:function (name,age,sex) {
            this.name = name;
            this.age = age;
            this.sex = sex;
        },
        isPerson:true,
        printf:function () {
            console.log(this.name,this.age,this.sex);
        }
    };

    //构造函数的原型中的init的原型指向构造函数原型本身,即初始化后添加构造函数原型中的方法  
    CreatAPerson.prototype.init.prototype = CreatAPerson.prototype;
    //给window添加CrateAPerson方法
    window.CreateAPerson = CreatAPerson;

//调用部分
let xiaoming = CreateAPerson('小明','21','女');
xiaoming.printf();

在这里插入图片描述

图解:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_20535249/article/details/100511269
今日推荐