javaScript中原型链

一、原型链

js 的对象分为普通对象和函数对象。每个对象都有__proto__ 但是只有函数对象 (非箭头函数) 才有 prototype 属性。

new的过程:

1、创建一个空的简单 javaScript对象

2、将空对象的 __proto__连接到该函数的 prototype

3、将函数的this指向新创建的对象

4、函数中如果没有返回对象的话,将this作为返回值

原型链

实例对象都有一个__proto__, __proto__ 指向原型对象,原型对象里有个constructor就是构造函数,构造函数的prototype指向原型对象,因为原型对象也是对象,所以原型对象也有__proto__, __proto__指向原型对象的原型对象,也就是Object, Object也是对象,所有,Object也有__proto__指向Object的原型对象为null, 这就是原型链。

相关推荐
曹轲恒7 小时前
Java中断
java·开发语言
施棠海8 小时前
监听与回调的三个demo
java·开发语言
時肆4858 小时前
C语言造轮子大赛:从零构建核心组件
c语言·开发语言
赴前尘9 小时前
golang 查看指定版本库所依赖库的版本
开发语言·后端·golang
de之梦-御风9 小时前
【C#.Net】C#开发的未来前景
开发语言·c#·.net
知乎的哥廷根数学学派9 小时前
基于数据驱动的自适应正交小波基优化算法(Python)
开发语言·网络·人工智能·pytorch·python·深度学习·算法
de之梦-御风9 小时前
【C#.Net】C#在工业领域的具体应用场景
开发语言·c#·.net
sunfove9 小时前
将 Python 仿真工具部署并嵌入个人博客
开发语言·数据库·python
Learner9 小时前
Python类
开发语言·python
X1A0RAN11 小时前
python 借助 paramiko 库执行 SSH命令报错:input is not a terminal 解决方式
开发语言·python·ssh