构造函数与原型对象和实例对象的关系

简介: 构造函数与原型对象和实例对象的关系 //通过构造函数实例对象,并初始化 //var arr=new Array(10,20,30,40); //join是方法,实例对象调用的方法 //arr.join("|"); //console.

构造函数与原型对象和实例对象的关系

//通过构造函数实例对象,并初始化
//var arr=new Array(10,20,30,40);
//join是方法,实例对象调用的方法
//arr.join("|");
//console.dir(arr);
//join方法在实例对象__proto__原型
//console.log(arr.__proto__==Array.prototype);
//原型的作用之一:共享数据,节省内存空间
//构造函数
function Person(age,sex) {
  this.age=age;
  this.sex=sex;
}
//通过构造函数的原型添加一个方法
Person.prototype.eat=function () {
  console.log("明天中午吃完饭就要演讲,好痛苦");
};
var per=new Person(20,"男");
// per.__proto__.eat();
per.eat();
// per.eat();
//构造函数,原型对象,实例对象之间的关系

console.dir(Person);
//console.dir(per);

结论 构造函数中的prototype 即Person.prototype == 实例对象中的__proto__ 即per.__proto__
两者共用一块内存空间即 per.__proto__指向Person.protoype

Image and video hosting by TinyPic

而构造函数中的prototype的constructor构造器指向的自身

Image and video hosting by TinyPic

目录
相关文章
|
存储 NoSQL 算法
Redis HyperLogLog 是什么?这些场景使用它,让我枪出如龙,一笑破苍穹
Redis HyperLogLog 是什么?这些场景使用它,让我枪出如龙,一笑破苍穹
288 0
|
前端开发 容器
使用 CSS Grid 布局实现响应式设计
【10月更文挑战第1天】使用 CSS Grid 布局实现响应式设计
565 99
|
Java 数据库连接 应用服务中间件
JavaWeb CRUD 与分页系统架构学习教程
本教程详细讲解了如何使用 Java Web 技术构建一个带有 CRUD 和分页功能的应用程序。以产品信息管理为例,采用 MVC 架构设计,涵盖 Servlet、JSP、JDBC/MyBatis 等技术。内容包括基础知识介绍、项目结构划分、数据库连接配置、DAO 层实现、Service 层设计、Servlet 控制层编写、JSP 前端展示以及分页功能的实现。同时涉及日志配置和 Tomcat 部署运行。通过分层开发,确保代码清晰、职责分明,便于维护和扩展。适合初学者掌握 Java Web 开发全流程,并为学习更高级框架奠定基础。
347 0
|
网络协议 网络性能优化 网络架构
运输层---概述
运输层---概述
|
运维 小程序 前端开发
小程序开发问题之在小程序中调用my.chooseImage接口让用户选择图片如何解决
小程序开发问题之在小程序中调用my.chooseImage接口让用户选择图片如何解决
|
Web App开发 缓存 移动开发
四万字符数带你使用 Vitepress 构建博客并部署到 github 平台
四万字符数带你使用 Vitepress 构建博客并部署到 github 平台 最近写了好多篇 Chrome 浏览器插件相关的文章,有十几二十篇,就想着构建个博客,用来放置相应的文章。 正好前段时间看到 VitePress 1.0.0 发布了,而且是用 markdown 写文章,正好写插件文章的时候文章都是 md 格式,所有用下这个然后顺便写一篇使用教程。 Chrome 插件开发博客地址:https://18055975947.github.io/extension/
546 0
|
前端开发
react 组件进阶之Error Boundaries(错误边界)
错误边界: 用来捕捉错误的代码,说到捕捉错误。大家可能都会说 直接try catch 不就行了。对的,try catch 确实是一种在各个语言比较通用的方法。但是在react 组件中,如果某一个组件发生错误,他是会往他的父级组件抛出错误的,然后自己是会被卸载的。如果到跟组件都不能够处理错误,这个组件树就会被卸载,组件树卸载导致的页面效果就是直接的报错。
react 组件进阶之Error Boundaries(错误边界)
|
测试技术 Android开发 开发者
构建高效Android应用:Kotlin协程的全面指南
【2月更文挑战第31天】在移动开发领域,性能优化和流畅的用户体验始终是开发者追求的核心目标。随着Kotlin语言在Android开发中的普及,其提供的协程功能成为了实现异步编程和提升应用响应性的有力工具。本文将深入探讨Kotlin协程在Android应用中的运用,从基本概念到高级技巧,帮助开发者构建更加高效、稳定且易于维护的应用。
|
存储 消息中间件 SQL
快手 Flink 的稳定性和功能性扩展
快手技术专家刘建刚,在 Flink Forward Asia 2022 生产实践专场的分享。
7401 3
快手 Flink 的稳定性和功能性扩展