JavaScript_03面向对象程序设计(原型【五】)简单原型的使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_36282409/article/details/84111017
New Web Project
    <script type="text/javascript" charset="UTF-8">
        //简单原型:
        function Person(){
            
        }
        var p1=new Person();
        
        
        Person.prototype={
           // constructor:Person,//必须是原型对象的构造器。
            name:'z3',
            age:20,
            job:"程序员",
            say:function(){
                alert('我是原型的函数');
            }
            
        };
        
        //ECMA5给原型对象重新设置构造器的方法。Object.define
        //EF4+ie8
        //3个参数:参数1:重新设置构造器对象,  参数2:设置什么属性,参数3:options参数项
        Object.definePropery(Person.prototype,'constructor');
        
        
        /*
        var p1=new Person();
       // alert(p1.name);
       // p1.say();
        
       // alert(Person.prototype.constructor);
 
         //枚举对象的keys
        for(attr in p1){
            alert(attr);
        }
        */
       
       //原型的动态特性
       /*
       function Person(){
           
       }
       
       var p1=new Person();
       
       //原型对象的构造器默认为Person
       Person.prototype.say=functon(){alert('我是方法!')};
       
       
       p1.say();
       
       */
      
      function Person(){
          
      }
      var p1=new Person();
      
       Person.prototype={
          //constructor:Person,  //必须得表示原型对象的构造器
          name:'z3',
           age:20,
           job:'程序员',
           say:function(){
               alert('我是原型对象的函数');
           }
       };
       
      //alert(p1.name); //error 因为原型对象里面没有任何属性和方法
      
      //p1.say();
      
      //注意简单原型使用的顺序(实列对象必须在原型对象之后创建)
      var p2=new Person();
      p2.say();
       
    </script>
</head>
<body>
    <h1>New Web Project Page</h1>
</body>

猜你喜欢

转载自blog.csdn.net/weixin_36282409/article/details/84111017