美文网首页
javaScript原型继承日记

javaScript原型继承日记

作者: _palm | 来源:发表于2016-07-01 15:35 被阅读24次

    javaScript 中,'一切皆对象' ! 所有对象都有一个隐藏属性__proto__ 通过这个可以获取其对象的原型对象,也经常有人把__proto__叫作 隐藏原型属性. 它指向对象的构造函数的原型对象。 如下代码:

    function A() {
      //
    }
    var a = new A() ;
    console.log(a.__proto__) ; // Function.prototype
    
    var obj = {
        attr:'xxx'
    }
    console.log(obj.__proto__) ; //Object.prototype
    
    

    Function除了有__proto__属性外,还有一个prototype属性,这是一个指针,指向方法或者对象的的原型对象。它包含对象共用的方法,类似java中的类方法,在javaScript中的继承就是通过这个来实现的, 我们可以通过改变某一个对象的的原型来实现继承,如果某一个对象的原型被改变了,则这个对象就拥有了这个原型上的所有方法,这就是所谓的继承,这里需要注意的是另一个属性constructor,该属性指向对象的构造方法, 如上aconstructor只想函数A 。当我们改变了对象的原型,同时需要修正其constructor. 这个 constructorprototype的一个属性.

    相关文章

      网友评论

          本文标题:javaScript原型继承日记

          本文链接:https://www.haomeiwen.com/subject/jgnfjttx.html