首页 > 其他分享 >prototype和__proto__之间区别和关系?用最简单的话告诉你

prototype和__proto__之间区别和关系?用最简单的话告诉你

时间:2023-09-29 23:22:32浏览次数:31  
标签:__ proto Person 原型 prototype 构造函数

首先把两句话先抛出来

每个构造函数都有一个prototype属性
实例对象的__proto__就是它构造函数的prototype

function Person(){
  this.name = '张三'
}
//我们可以通过 Person.prototype.age = 19 来设置原型中的属性
Person.prototype.age = 19

let p = new Person()
console.log('--->',p.__proto__.name) // 张三

原型链呢其实也就是一环套一环 在实例对象中有prototype 而prototype里面有constructor(构造器)构造器里面又有prototype 然后直到最后一个原型链

最后需要补充一点:原型链的尽头是null

标签:__,proto,Person,原型,prototype,构造函数
From: https://www.cnblogs.com/zxl327/p/17737508.html

相关文章

  • Mybatis - 找不到字段 'default_connector'
    通过Lombok自动生成的getter/setter可能与mybatisplus自动映射实体类的getter/setter存在差异,这个问题在Spring反序列Body数据也存在,详细查看视频:我为什么不喜欢lombok,这个问题大家怎么看,高级分析技巧。而我遇到的问题是有一个default开头的属性,这似乎也是Java......
  • 数理逻辑 (1) 命题逻辑
    命题表达式命题语言的字符集由和变量和命题运算符构成,由于\(\land,\lor,\leftrightarrow\)都能用\(\lnot,\to\)代替,故定义符号表:\[\Sigma:=\{(,),\lnot,\to,A_n|n\in\mathbbN\}\]其中\(A_n\)代表了可数个命题变量命题逻辑的有限符号串定义为:\[\Sigma^......
  • 实验1 C语言输入输出和简单程序编写
    一、实验目的二、实验准备三、实验内容四、实验结论task1task1_1代码:1#include<stdio.h>23intmain()4{5printf("O\n");6printf("<H>\n");7printf("II\n");89printf("O\n");10......
  • Express+Mockjs+nodemon 搭建 mock 服务
    安装依赖npmiexpressmockjsnodemonbody-parser--save-devExpress:Node.jsWeb应用程序框架Mock.js:模拟数据生成nodemon:监听变化,实现热更新body-parser:请求体解析编写server.jsconstexpress=require('express')constbodyParser=require('body-parser')co......
  • windows10 安装wsl2
     https://deepinout.com/wsl-tutorials/37_installing_wsl2_on_windows_10.htmlwin10安装wsl2WSL(WindowsSubsystemforLinux)是Windows10中一项十分强大的功能,它可以使用户在Windows系统上直接运行Linux系统,并且两个系统之间可以相互通信。而在WSL2中,Windows子......
  • 在 SDXL 上用 T2I-Adapter 实现高效可控的文生图
    T2I-Adapter是一种高效的即插即用模型,其能对冻结的预训练大型文生图模型提供额外引导。T2I-Adapter将T2I模型中的内部知识与外部控制信号结合起来。我们可以根据不同的情况训练各种适配器,实现丰富的控制和编辑效果。同期的ControlNet也有类似的功能且已有广泛的应用。然......
  • Java 变量之变量数据类型
    Java变量之变量数据类型Java数据类型图:1.基本数据类型基本数据类型,也称内置类型,是可以在栈直接分配内存的,Java保留基本数据类型最大的原因也在此:性能。关于这一点可以参考:Java为什么需要保留基本数据类型。另外,要注意,Java是基于JVM的,所以,其所占字节固定,与机器平台无关......
  • gitlab升级后Runner 500报错
    gitlab升级后500报错今天是月饼节哦。长假最适合梳理下这段时间的工作经验。上个月说到gitlab升级到16.2.3,其实升级后没几天遇到一个比较棘手的问题:超级管理员登录进去,修改什么配置保存后都会报错500,不仅如此,还发现项目无法移动命名空间(可以理解为a用户的项目移到b用户......
  • Leetcode 1143. 最长公共子序列
    https://leetcode.cn/problems/longest-common-subsequence/description/?envType=study-plan-v2&envId=top-100-liked给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列是指这样一个新的字符串:它......
  • Linux脚本扩展
    《Linux脚本基础扩展》  在之前的!《Linuxshell脚本基础知识》中,介绍了编写脚本的基础语法知识;现根据B站教程,对脚本编写实践部分进行总结;1.编写脚本,遍历目录下的所有txt文件,且将文件做备份,备份的格式为源文件名后缀增加日期;如:a.txt备份为a.txt_20230122#!bin/bash#author:......