zoukankan      html  css  js  c++  java
  • JS三种创建对象的方式及工厂模式

    首先,JS是一门基于对象的语言,不是面向对象语言,因为他的语法中没有Class(类)

         JS虽然不是面向对象的语言,但是可以模拟面向对象语言的编程思想

    1.通过new的方式(系统对象)

         var obj=new Object();
    
      var arr=new Array();
    
      var str=new String();

    2.字面量的方式

    var obj={
          name:"小明",
          age:20,
          eat:function(){
                console.log("吃")
        }      
    }

    3.自定义构造函数创建对象

    function Person(name,age){
      this.name=name;
      this.age=age;
      this.eat=function(){
         console.log("吃");
      }     
    }

      3.1实例化对象

    var man = new Person("小明",20);

      在这个实例化过程中发生了四件事:

        (1)开辟内存空间,把创建的新对象存储起来

        (2)把this设置为当前对象

        (3)设置属相和方法的值

        (4)返回当前对象

    4.工厂模式创建对象

    //我们将他封装成一个函数
    function createObj(name,age){
       var obj=new Object();
       obj.name=name;
       obj.age=age;
       return obj;        
    }

      4.1大批量创建对象

    var man1=createObj("小明",20);
    var man2=createObj("小明",20);
    var man3=createObj("小明",20);
    var man4=createObj("小明",20);
    var man5=createObj("小明",20);

      4.2优缺点:

          优点:可用于大批量创建对象

          缺点:一种数据类型

  • 相关阅读:
    Android屏幕适配全攻略(最权威的官方适配指导)--转
    Android实现全屏的三种方式
    Mysql锁(翻译)
    mysql5.6主从配置
    jvm加载类(更新中)
    如何定位jdk中的native方法源码?
    光学字符识别OCR-2
    光学字符识别OCR
    关于freetype在安装中的遇到的问题
    锚点链接
  • 原文地址:https://www.cnblogs.com/qyuan/p/9759417.html
Copyright © 2011-2022 走看看