zoukankan      html  css  js  c++  java
  • 批量创建对象:工厂函数和构造函数

    1、工厂函数:

    // 批量创建对象: 可以将创建对象的代码封装在一个函数中, 这个函数就叫工厂函数
    // 虽然封装了, 但还是通过 字面量的方式创建的, 所以类型 还是 Object
    // 通过工厂函数创建的对象, 没有具体的类型的, 都是 Object

    function createPerson(name, age, gender) {
    var obj = {
    name: name,
    age: age,
    gender: gender,

    say: function() {
    // 在对象的方法中, this 指代当前对象
    console.log('大家好, 我是' + this.name);
    },
    eat: function() {
    console.log('会吃饭');
    }
    };
    return obj;
    }

    var xh = createPerson('小红', 18, '女');
    console.log(xh);

    // var xm = createPerson('小明', 24, '男');
    // console.log(xm);

    // var xz = createPerson('小张', 80, '男');
    // console.log(xz);
     
     
     
    2、构造函数:
    // 构造函数:
    // 1. 就是一个函数
    // 2. 首字母大写
    // 3. 在js中, 内置了一些构造函数, 比如: Object Array
    // 4. 构造函数可以自定义
    ----------------------------------------------
    // 构造函数的使用步骤:
    // 1. 自己声明一个构造函数
    // 2. 结合 new 一起使用, 创建一个有类型的对象
    -------------------------------------------------------------
    new的四个作用:
    // new作用: 创建对象
    // 1. 会新建一个对象, 指定对象的类型
    // 2. 让构造函数的 this, 指向新创建的对象
    // 3. 执行构造函数
    // 4. 将新创建的对象返回
    --------------------------------------------------------------
    function Girl(name, age) {
    this.name = name;
    this.age = age;

    this.cook = function() {
    console.log('会烧饭');
    };
    this.sing = function() {
    console.log('会唱歌');
    }
    }
    var girl = new Girl('小美', 18);
    console.log(girl);
    girl.sing();
     
     

     
  • 相关阅读:
    基础架构:一条SQL查询语句是如何执行的?
    常用的字符串转换日期格式
    JSONObject.fromObject(map)(JSON与JAVA数据的转换)
    ModelAndView的介绍
    Springmvc常用注解
    @PathVariable注解
    @ModelAttribute运用详解
    struts2将servlet对象注入到Action中
    为什么要继承ActionSupport?
    mysql中like用法
  • 原文地址:https://www.cnblogs.com/hhmmpp/p/10992178.html
Copyright © 2011-2022 走看看