zoukankan      html  css  js  c++  java
  • 创建对象(上)

     
    // var box=new Object(); //1:创建函数的基本方法
    // box.name="feige";
    // box.run=function(){
    // alert(this.name+"runnig.....")
    // }
    //    
    //    box.run();
    //    //缺点就是如果要创建一个类似的对象要产生大量代码
    
     
    
    //2工厂模式**************************************************************************************************************
    
    //    
    //    function createObj(name,age){ //共产模式创造对象
    //    var obj=new Object();
    //    obj.name=name;
    //    obj.age=age;
    //    obj.run=function(){
    //    alert(this.name+this.age+"running......");
    //    }
    //    
    //    return obj; //返回对象引用
    //    
    //    }
    //    function createObj2(name,age){ //共产模式创造对象
    //    var obj=new Object();
    //    obj.name=name;
    //    obj.age=age;
    //    obj.run=function(){
    //    alert(this.name+this.age+"running......");
    //    }
    //    
    //    return obj; //返回对象引用
    //    
    //    }
    //    var box1=createObj('feige',22);//创建第一个对象
    //    var box2=createObj('cc',22); //创建第二个对象
    //    box1.run();
    //    box2.run();
    // var box3=createObj2('kkk',2); 
    // 
    //    //PS:工厂模式虽然解决了重复实例化的问题,但是无法搞清楚他们到底哪个是对象的实例,例如下面的
    //    alert(box1 instanceof Object);//true 
    //    alert(box3 instanceof Object);//still true 
    // 
    
    //3构造方法创造对象**************************************************************************************************************
    function Box(name,age){ //构造方法创造对象(改良后的工厂方法)
    this.name=name;
    this.age=age;
    this.run=function(){
    alert(this.name+this.age);
    }
    }
    
    function Box2(name,age){ //构造方法创造对象
    this.name=name;
    this.age=age;
    this.run=function(){
    alert(this.name+this.age);
    }
    }
    
    
    var box1=new Box('CC',13); //实例化
    var box2=new Box2('cc',21); //实例化
    
    //alert(box1 instanceof Box);
    //alert(box2 instanceof Box);//与工厂模式不同可以区分出来实例,box2是Box2的对象的引用
    
    //1.构造函数没有new Object但是后台会自动 var obj=new Object();
    //2.this就相当于 obj
    //3.构造函数不需要返回对象引用,他是后台自动返回的
    
    //规范
    
    //1.构造函数也是函数,但是函数名第一个字母大写
    //2.必须new 构造函数(),new Box()
    //3.必须使用new 运算符
    var o=new Object();//对象冒充,可以把整个构造函数拿下来给o
    Box.call(o,"冒充",12)
    o.run();
    
    }
    
     
  • 相关阅读:
    selenium===介绍
    工具安装===Sublime Text-安装
    Django===django工作流
    python基础=== itertools介绍(转载)
    python基础===如何优雅的写代码(转自网络)
    python基础===一道小学奥数题的解法
    python基础===列表类型的所有方法
    python基础===通过菲波那契数列,理解函数
    python基础===字符串切片
    安全测试===BurpSuite使用教程-附安装包
  • 原文地址:https://www.cnblogs.com/zhangxiaofei/p/6711221.html
Copyright © 2011-2022 走看看