JS 工厂方式创建对象、构造函数创建对象

工厂方式创建对象

使用工厂方法 , 创建对象
通过该方法可以大批量的创建对象

<script>
        function createPerson(name, age, gender) {
     
     
            //创建一个新对象
            var obj = new Object();
            //向对象中添加属性
            obj.name = name;
            obj.age = age;
            obj.gender = gender;
            obj.sayName = function () {
     
     
                alert(this.name);
            }
            // 将新对象返回
            return obj;
        }
        var obj1 = createPerson("TOM", 16, "男");
        var obj2 = createPerson("JIM", 18, "女");
        obj1.sayName(); 
        //TOM
 </script>

但 是
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

构造函数

  • 没有Person类型,可以创建一个构造函数,用来创建Person对象
  • 构造函数就是普通函数,创建方式和普通函数没有区别,习惯上首字母大写
  • 普通函数直接调用,构造函数使用new关键字调用
  • 构造函数执行流程:
    ----------------1.立即创建一个新的对象,一出现new就会在堆内存开辟空间
    ----------------2.将新建的对象设置为函数中 this(重要)(this==新建对象)
    ----------------3.逐行执行函数中的代码
    ----------------4.将新的对象作为返回值返回
  • 使用一个构造函数创建的对象,我们成为一类对象,也将一个构造函数成为一个类
    -----------------构造函数创建的对象成为该类的实例,或该构造函数的实例
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    使用构造函数创建对象
    在这里插入图片描述
    instanceof 函数
    在这里插入图片描述
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40929263/article/details/108033077