zoukankan      html  css  js  c++  java
  • js 函数常见的三种实例化方式

     1         //工厂模式
     2         function oj(){
     3             var lio=new Object(); //创建对象,对象属性赋值
     4             lio.name='lio';
     5             lio.attr='男';
     6             lio.hobby=function(){
     7                 var li=document.createElement("p");
     8                 var txt=document.createTextNode("三妹");
     9                 li.appendChild(txt);
    10                 document.body.appendChild(li);
    11             };
    12             return lio;
    13         }
    14         var person=oj();
    15         //alert(person.name);
    16 
    17         //构造函数模式
    18         function oj2(name,age){
    19             this.name=name;
    20             this.age=age;
    21             this.hobby=function(){
    22                 var li=document.createElement("p");
    23                 var txt=document.createTextNode("三妹");
    24                 li.appendChild(txt);
    25                 document.body.appendChild(li);
    26             }
    27         }
    28         var person2=new oj2('三妹',123);
    29         person2.hobby();
    30         alert(person2.name);
    31 
    32         //原型模式
    33         function oj3(){
    34             //this.name='lio';
    35         }
    36         oj3.prototype.name='lio';
    37         oj3.prototype.love= function (name) {
    38             alert("爱"+name);
    39         };
    40         var person3=new oj3();
    41         //检测是在实例中还是在原型中
    42         alert(person3.hasOwnProperty("name"));
    43         alert(person3.hasOwnProperty("rename"));
    44         person3.love('三妹');
    45 
    46         //混合模式
    47         function oj4(age) {
    48             this.age=age;
    49             this.rename='aaaa';
    50         };
    51         oj4.prototype={
    52             constructor:oj4,
    53             name:'lio',
    54             age:123,
    55             love: function (name) {
    56                 alert(name+"爱三妹");
    57             }
    58         };
    59         var person4=new oj4(18);
    60         alert(person4.hasOwnProperty("age"));//true
    61         person4.love('lio');
  • 相关阅读:
    Codeforces Round #124 (Div. 2)
    Codeforces Round #158 (Div. 2)
    Codeforces round FF
    缕缕,
    拉伸 原来 就这一句话,
    tableveiw上面 的手势,
    reloaddata 是没有对 tableview的 headerview进行 刷新的,
    y
    考虑欠缺 以及 设计 导致的 工作量,
    present出来的 controller上的 controller里面用 navigationcontrolle了,失效了,
  • 原文地址:https://www.cnblogs.com/szatpig/p/6888181.html
Copyright © 2011-2022 走看看