所有的对象都可以自由扩展属性 (null 除外)

js基础回顾----原型链和原型

所有的引用类型(对象,数组,函数)都有一个_proto_属性

js基础回顾----原型链和原型

所有的函数都有一个prototype属性

js基础回顾----原型链和原型

所有引用类型对象的_proto_属性指向它的的构造函数的prototype属性值

js基础回顾----原型链和原型

 

 obj.__proto__===Object.prototype;

 

遍历对象的属性(以及原型的属性)

<script>
    var o={};
    o.name="a";
    o.say=function(){};
    Object.prototype.age=12;  //原型增加属性
    
    //自己的属性+原型的属性
    for(item in o){
        alert(item)     //弹出name say  age
    }
    
    
    //只读取自己的属性
    for(item in o){
        if(o.hasOwnProperty(item)){
            alert(item)     //弹出name say  
        }
        
    }
</script>

原型链流程

js基础回顾----原型链和原型

 

 

 

 

js基础回顾----原型链和原型

 

相关文章:

  • 2022-02-02
  • 2021-06-22
  • 2021-12-01
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-07-11
  • 2022-12-23
  • 2021-05-19
  • 2022-12-23
  • 2021-04-10
  • 2021-09-30
相关资源
相似解决方案