zoukankan      html  css  js  c++  java
  • 搞清楚原型链

    前提须知(敲黑板). JavaScript内置对象

      内置对象指的是:JavaScript本身就自己有的对象,可以直接拿来就用。例如Array String 等等。JavaScript一共有12内置对象

        (1).其中10个函数类型( String,Number,Boolean,Array,Function,Date,RegExp,Error,Object,Event )函数类型 有 __proto__和 prototype 属性

          (2).其中2个对象类型(Math,JSON) 对象类型只有__proto__属性,(不可以new Math,会报错,这就是和上边10个的区别)

      

    1.特殊的Function.prototype、Function._ _proto_ _。

    问:js中所有类/构造函数的prototype和_ _proto_ _都是一个对象?

    答:错!Functionprototype和_ _proto_ _是函数数据类型,且 Function.prototype==Function._ _proto_ _ ,这是为了保证函数构造器们(String,Number,Boolean,Array,Function,Date,RegExp,Error,Object,Event)的_ _proto_ _指向的都是函数【始终不明白为什么】

    2.Object._ _proto_ _指向Function.prototype,这很好理解,Object指向所属类(Function)的原型嘛。

    3.Object.prototype._ _proto_ _是不存在的,Object.prototype是原型链的顶端。

    4.Object作为一个构造函数(是一个函数对象!!函数对象!!),所以他的__proto__指向Function.prototype;

    5.Object.prototype.hasOwnProperty()属性方法用来检验一个对象是否自己拥有一个属性而非通过进化链__proto__继承来的属性

     

  • 相关阅读:
    poj 1579(动态规划初探之记忆化搜索)
    hdu 1133(卡特兰数变形)
    CodeForces 625A Guest From the Past
    CodeForces 625D Finals in arithmetic
    CDOJ 1268 Open the lightings
    HDU 4008 Parent and son
    HDU 4044 GeoDefense
    HDU 4169 UVALive 5741 Wealthy Family
    HDU 3452 Bonsai
    HDU 3586 Information Disturbing
  • 原文地址:https://www.cnblogs.com/chenguangliang/p/6652213.html
Copyright © 2011-2022 走看看