js | Core

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

Object

是什么? 属性+[[prototype]]对象。

例如,下面的,son是对象,foo不是对象。打印出来的son,能看到有一个prototype 对象。

prototype vs proto vs [[prototype]]

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

    -

    那可能会文问,为什么打印的son没_proto _,只有[[protptype]]啊?

    总结就是 proto 只是一个访问方式,现在慢慢被舍弃了,没显示,可能是浏览器的问题。实际上你仔细对比,只要是有[[prototype]]或者__proto__就行了。

但是你执行

console.log(son._proto _) 还是能访问的

es6之后的访问方式可能偏向于下面这种:

  • .prototype
相关推荐
zzc921几秒前
MATLAB仿真生成无线通信网络拓扑推理数据集
开发语言·网络·数据库·人工智能·python·深度学习·matlab
HUN金克斯10 分钟前
C++/C函数
c语言·开发语言·c++
慢半拍iii10 分钟前
数据结构——F/图
c语言·开发语言·数据结构·c++
钢铁男儿13 分钟前
C# 表达式和运算符(表达式和字面量)
开发语言·c#
编程有点难16 分钟前
Python训练打卡Day43
开发语言·python·深度学习
m0_6371469321 分钟前
零基础入门 C 语言基础知识(含面试题):结构体、联合体、枚举、链表、环形队列、指针全解析!
c语言·开发语言·链表
前端Hardy26 分钟前
HTML&CSS:3D图片切换效果
前端·javascript
LjQ204030 分钟前
网络爬虫一课一得
开发语言·数据库·python·网络爬虫
你是狒狒吗37 分钟前
TM中,return new TransactionManagerImpl(raf, fc);为什么返回是new了一个新的实例
java·开发语言·数据库