zoukankan      html  css  js  c++  java
  • JavaScript_proto_和prototype到底是什么玩意

    _proto_prototype到底有什么区别啊?是个什么东西啊?

    在这里我头也比较大啊,小学语文没学好,所以组织能力比较差劲,所以尽量的咱用代码来解释吧。

    function too() {
        this.t = 0;  
    }
    var t = new too()
    console.log(t._proto_)
    console.log(too.prototype)

    看了输出以后,都能惊奇的发现,输出的是同一个东西,一个是万物皆有的proto,还有一个就是自身的构造,

    也就是说,_proto_这个属性的意思是,去指向自己的父亲创造自己时用的构造方法。
    而prototype这个属性的意思就是,我自己生孩子(创建对象)的时候用的构造方法。
    看起来有点绕来绕去的,其实说白了就是一个找爸爸怎么创建自己,一个找自己怎么创建儿子,两种东西,所以_proto_这属性能一直往上摸上去,找自己的爸爸的爸爸,爸爸的爸爸的爸爸。
    那么我们来简单的试验一下,按照刚才的代码,我用function去创造了too这个对象,而用too的too()这个构造方法,去创建了t这个对象,所以关系是function生了too,too生了t,然后我们在用instanceof去比较一下三者的关系。

    console.log(t instanceof too)  //true
    console.log(too instanceof Function) //true
    console.log(t instanceof Function) //true
  • 相关阅读:
    SQL 触发器[1]
    SQL 存储过程[1]-常用参数及示例
    前端软件开发体系
    人工智能AI Boosting HMC Memory Chip
    先进一站式IP及定制
    BTC芯片介绍
    ONNX MLIR方法
    MLIR中间表示和编译器框架
    Non-Maximum Suppression,NMS非极大值抑制
    华为计算平台MDC810发布量产
  • 原文地址:https://www.cnblogs.com/web-record/p/10558396.html
Copyright © 2011-2022 走看看