Js的prototype属性

Posted 413Xiaol

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Js的prototype属性相关的知识,希望对你有一定的参考价值。

prototype作用在JS中的对象上,可以为对象添加属性和方法。

语法:object.prototype.name=value

细节:当通过一个类创建对象以后,当通过对象访问属性的时候,JS查找属性的顺序是:

    1.对象本身的属性,比如 obj={} obj.age=18

    2.对象的类的prototype中查找,比如 obj={} obj.prototype.age=18

    3.对象的根对象(object对象)中查找

    4.当一个对象的类定义之后,可以通过prototype为对象的类添加新的属性和方法,此后,通过该类新产生的对象就具备了该属性或方法

      function Persion() {
        this.name="xiaol"
      }

      p1 = new Persion()

      p1.name    //"xiaol"


      Persion.prototype.age = 18


      p1.age  //18


      p2 = new Persion()

      p2.age  //18

    5.通过obj.hasOwnProperty(attrName)判断某个属性是否是对象本身的属性,例如obj.hasOwnProperty("age")返回false

    6.通过attrName in obj判断属性是否在对象内(包括本身属性和原型属性),例如:"age" in p1返回ture

 






以上是关于Js的prototype属性的主要内容,如果未能解决你的问题,请参考以下文章

深入理解js——prototype原型

js中Prototype属性解释及常用方法

js的Prototype属性

js原型prototype属性用法实例

JS的Prototype属性

js prototype 理解