js | Core

http://dmitrysoshnikov.com/ecmascript/javascript-the-core/

Object

是什么? 属性+[[prototype]]对象。
例如,下面的,son是对象,foo不是对象。打印出来的son,能看到有一个prototype 对象。
在这里插入图片描述

prototype vs _proto_ vs [[prototype]]

  • [[prototype]] :是对象的私有属性,指向对象的原型,也就是标记实例是根据哪个原型来的
    所以上面这个图也表示了 son是从Object继承来的(任何对象都是从这儿继承的)

  • _proto_: 那[[prototype]]是私有属性,访问不了也改不了,那就不访问不改了?nope。_proto_ 就是用改[[prototype]]的。
    -在这里插入图片描述
    在这里插入图片描述
    那可能会文问,为什么打印的son没_proto_,只有[[protptype]]啊?
    在这里插入图片描述
    总结就是 proto 只是一个访问方式,现在慢慢被舍弃了,没显示,可能是浏览器的问题。实际上你仔细对比,只要是有[[prototype]]或者__proto__就行了。

但是你执行
console.log(son._proto_) 还是能访问的
在这里插入图片描述
es6之后的访问方式可能偏向于下面这种:
在这里插入图片描述

  • .prototype

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 01:06:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 01:06:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 01:06:02       45 阅读
  4. Python语言-面向对象

    2024-07-22 01:06:02       55 阅读

热门阅读

  1. 堆、栈和队列(数据结构)

    2024-07-22 01:06:02       20 阅读
  2. 关于Spring Boot IOC&DC,看这一篇就够了

    2024-07-22 01:06:02       16 阅读
  3. 关于数据库索引

    2024-07-22 01:06:02       21 阅读
  4. 【Node.js基础04】node.js模块化

    2024-07-22 01:06:02       18 阅读
  5. Postman实战案例:从零开始设计API测试流程

    2024-07-22 01:06:02       20 阅读
  6. linux文本查看命令

    2024-07-22 01:06:02       17 阅读
  7. 基于深度学习的医学影像分类

    2024-07-22 01:06:02       20 阅读
  8. 装修前需要提前准备啥

    2024-07-22 01:06:02       16 阅读