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, 这就是原型链。

相关推荐
挖矿大亨6 分钟前
C++中空指针访问成员函数
开发语言·c++
摇滚侠14 分钟前
【程序员入门系列】jQuery 零基础入门到精通!Jquery 选择器 API
前端·javascript·jquery
im_AMBER14 分钟前
Leetcode 111 两数相加
javascript·笔记·学习·算法·leetcode
团子的二进制世界26 分钟前
Sentinel-服务保护(限流、熔断降级)
java·开发语言·sentinel·异常处理
虫小宝38 分钟前
淘客系统的容灾演练与恢复:Java Chaos Monkey模拟节点故障下的服务降级与快速切换实践
java·开发语言
zz345729811340 分钟前
c语言基础概念9
c语言·开发语言
yxm263366908140 分钟前
【洛谷压缩技术续集题解】
java·开发语言·算法
键盘帽子42 分钟前
多线程情况下长连接中的session并发问题
java·开发语言·spring boot·spring·spring cloud
毅炼1 小时前
Java 基础常见问题总结(1)
开发语言·python
fengxin_rou1 小时前
【黑马点评实战篇|第一篇:基于Redis实现登录】
java·开发语言·数据库·redis·缓存