JS创建对象

<html>
    <body>
    <script>
    
        var o = {
            "na me":"kuangjun",
            'age':20,
            length:155,
            work:function(){
                var tmp = "na me";
                //alert(this["na me"]);
                
                alert(this[tmp]);
            }
        };
    
    //alert(o.age);
    //alert(o.length);
    //o.work();
    //成员的访问方式
    
    //------------------------
    //弱类型的编程语言,比如javascript,ruby
    
    var a = 5;
    
    a = "adsfa";
    
    
    //动态性:运行时可变化,比如对象可以动态的添加成员
    
    var o2 ={};
    o2.name = "banzhang";
    o2.work = function(){
        alert(this.name);
    }
    
    //o2.work();
    
    
    //创建对象的第二种方式
    //习惯:首字母大写的时候,此函数不是用来调用的,
    //而是用来创建对象的
    
    //构造型函数(Constructor)
    
    function Person(name,age){
    
        //这里的this指向的是new Person创建出来的对象    
        this.myname = name;
        
        this.age = age;
        this.work = function(){};
    }
    
    
    var p1 = new Person("xuewei",18);
    p1.length = 180;//利用javascript的动态性,来追加成员
    alert(p1.myname);
    //alert(p1.age);
    //alert(p1.length);
    //alert(p1.name);  
    
    
    //添加静态方法
    
    Person.sp ="静态属性";
    Person.sp2 = "静态属性2"
    Person.sm1 = function(){
        alert('静态方法');
    }
    
    
    alert(Person.sp2);
    
    Person.sm1();
    
    </script>
    
    </body>

</html>

posted @ 2017-11-26 19:33  KioWu  阅读(272)  评论(0编辑  收藏  举报