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
相关推荐
paj123456789几秒前
JDK1.8新增特性
java·开发语言
木子02041 分钟前
前端VUE项目启动方式
前端·javascript·vue.js
IT古董7 分钟前
【人工智能】Python在机器学习与人工智能中的应用
开发语言·人工智能·python·机器学习
繁依Fanyi11 分钟前
简易安卓句分器实现
java·服务器·开发语言·算法·eclipse
endingCode20 分钟前
45.坑王驾到第九期:Mac安装typescript后tsc命令无效的问题
javascript·macos·typescript
湫ccc31 分钟前
《Python基础》之pip换国内镜像源
开发语言·python·pip
fhvyxyci32 分钟前
【C++之STL】摸清 string 的模拟实现(下)
开发语言·c++·string
qq_4597300334 分钟前
C 语言面向对象
c语言·开发语言
菜鸟学Python43 分钟前
Python 数据分析核心库大全!
开发语言·python·数据挖掘·数据分析
一个小坑货1 小时前
Cargo Rust 的包管理器
开发语言·后端·rust