请选择 进入手机版 | 继续访问电脑版
查看: 103|回复: 0

js工厂模式创建对象和自定义构造函数创建对象的区别理解

[复制链接]
  • TA的每日心情
    开心
    2018-8-2 13:00
  • 签到天数: 1 天

    [LV.1]初来乍到

    15

    主题

    18

    帖子

    154

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    154
    发表于 2019-4-17 17:36:44 | 显示全部楼层 |阅读模式
    1.   //工厂模式创建对象
    2.         function creatObjecct(name,age){
    3.             var obj = new Object();
    4.             obj.name = name;
    5.             obj.age = age;
    6.             obj.sayhi = function () {
    7.                 console.log("你好");
    8.             }
    9.             return obj;
    10.         }
    11. //函数内部用于执行创建对象和返回对象的操作。
    12.         //自定义构造函数
    13.          function Person(name,age,gender){
    14.              this.name = name;
    15.              this.age = age;
    16.              this.gender = gender;
    17.              this.sayHellow = function (){
    18.                  console.log("my name is"+this.name);
    19.              }
    20.          }
    21.          var person3 = new Person("王五",28,"女");
    22.         console.log(person3.age);

    23. /*二者的区别,工厂模式创建对象是调用系统构造函数进行创建对象,调用过程相当于执行函数内部的操作,所以有返回值。
    24. * 而自定义构造函数,是将函数本身变成构造函数,所以说不需要返回值,这里的Person()与Object()类型相同,都是构造函数
    25. *
    26. */
    复制代码


    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关注微信,有惊喜
    关注我们,每天有惊喜,每日有活动,每日有礼品赠送,扫描左边二维码,即可关注,你还在等什么?
    快速回复 返回顶部 返回列表