zoukankan      html  css  js  c++  java
  • js参考---使用工厂方法创建对象

    js参考---使用工厂方法创建对象

    一、总结

    一句话总结:

    使用工厂方法创建对象,可以通过传参数的方式批量创建对象,这样比直接创建对象方便很

    二、使用工厂方法创建对象

    博客对应课程的视频位置:

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         <script type="text/javascript">
     7             
     8             /*
     9              * 创建一个对象
    10              */
    11             var obj = {
    12                     name:"孙悟空",
    13                     age:18,
    14                     gender:"",
    15                     sayName:function(){
    16                         alert(this.name);
    17                     }
    18             };
    19 
    20             /*
    21              * 使用工厂方法创建对象
    22              *     通过该方法可以大批量的创建对象
    23              */
    24             function createPerson(name , age ,gender){
    25                 //创建一个新的对象 
    26                 var obj = new Object();
    27                 //向对象中添加属性
    28                 obj.name = name;
    29                 obj.age = age;
    30                 obj.gender = gender;
    31                 obj.sayName = function(){
    32                     alert(this.name);
    33                 };
    34                 //将新的对象返回
    35                 return obj;
    36             }
    37             
    38             /*
    39              * 用来创建狗的对象
    40              */
    41             function createDog(name , age){
    42                 var obj = new Object();
    43                 obj.name = name;
    44                 obj.age = age;
    45                 obj.sayHello = function(){
    46                     alert("汪汪~~");
    47                 };
    48                 
    49                 return obj;
    50             }
    51             
    52             var obj2 = createPerson("猪八戒",28,"");
    53             var obj3 = createPerson("白骨精",16,"");
    54             var obj4 = createPerson("蜘蛛精",18,"");
    55             /*
    56              * 使用工厂方法创建的对象,使用的构造函数都是Object
    57              *     所以创建的对象都是Object这个类型,
    58              *     就导致我们无法区分出多种不同类型的对象
    59              */
    60             //创建一个狗的对象
    61             var dog = createDog("旺财",3);
    62             
    63             console.log(dog);
    64             console.log(obj4);
    65             
    66             
    67         </script>
    68     </head>
    69     <body>
    70     </body>
    71 </html>
     
  • 相关阅读:
    ES5数组扩展
    ES5给object扩展的一些静态方法
    poj2531-dfs
    快排
    阶段性总结-贪心算法
    日常算法题
    poj1979 解题报告
    poj 2586
    poj3069
    poj2709 解题报告
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12432401.html
Copyright © 2011-2022 走看看