javascript原型

在这里插入图片描述
在这里插入图片描述
为了减少内存使用率可以使用原型对象

<script>//构造函数 公共的属性和方法 封装到Star 构造函数里面了//公共的属性写到 构造函数里面function Star(uname,age){this.uname=unamethis.age=agethis.sing=function(){console.log('唱歌');}}const ldh=new Star('刘德华',18)const zxy=new Star('张学友',19)console.log(ldh === zxy)//falseconsole.log(ldh.sing === zxy.sing)//false//上面两个都是false也就是意味着每一个实例都会分配内存空间function Animal(uname,age){this.uname=unamethis.age=age}//公共的方法写到原型对象里面Animal.prototype.eat=function(){console.log(this.uname+'都要吃饭');}dog=new Animal('dog',5)dog.eat()tiger=new Animal('tiger',10)console.log(dog.eat===tiger.eat);</script>

在这里插入图片描述
原型自定义方法

 <script>//自己定义 数组扩展方法 求和 最大 最小值//1.我们定义的这个方法 任何一个数组实例对象都可以使用//2.自定义的方法写到 数组.prototype身上const arr= new Array(1,2,3);console.log(arr);//自定义的方法...可以给我们展开Array.prototype.max=function(){//原型函数里面的this指向的是 实例对象arrconsole.log(this);return Math.max(...this)};console.log(...arr);result=arr.max()console.log(result);//自定义加法方法求和Array.prototype.sum=function(){return this.reduce(function(prev,item){return prev+item},0)};console.log(arr.sum());//自定义方法求最小值Array.prototype.min=function(){return Math.min(...this);}console.log(arr.min());</script>

结果:
在这里插入图片描述

<script>//constructor 单词 构造函数function Star(){}// Star.prototype.sing=function(){//     console.log('唱歌');// }// Star.prototype.dance=function(){//     console.log('跳舞');// }console.log(Star.prototype.constructor===Star);console.log(Star.prototype);Star.prototype={sing:function(){console.log('唱歌');},dance:function(){console.log('跳舞');}}console.log(Star.prototype);Star.prototype={constructor:Star,sing:function(){console.log('唱歌');},dance:function(){console.log('跳舞');}}console.log(Star.prototype);</script>

结果:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<script>//对象都会有一个属性__proto__指向构造函数的prototype原型对象,之所以我们对象可以使用构造函数prototype//原型对象的属性和方法,就是因为对象有__proto__原型的存在function Star(){}const ldh=new Star();console.log(ldh.__proto__===Star.prototype);</script>

在这里插入图片描述
在这里插入图片描述

只要是对象就就有__proto__
只要有原型对象就有constructor
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/460078.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

51单片机之数码管显示表白数字篇

朝菌不知晦朔 蟪蛄不知春秋 眼界决定境界 CSDN 请求进入专栏 是否进入《51单片机专栏》? 确定 目录 数码管的简介 数码管引脚定义 数码管的原理图 74HC245 代码实现 静态数码管的显示 动态数码管的显示 数码管实现表白画面 数码管的简介 L…

学习Android的第七天

目录 Android EditText 输入框 设置默认提示文本 范例 获得焦点后全选组件内所有文本内容 范例 限制EditText输入类型 android:inputType 值列表 范例 设置最小行&#xff0c;最多行&#xff0c;单行&#xff0c;多行&#xff0c;自动换行 范例 设置文字间隔 范例 …

通用的网站炫酷底部美化代码分享

网站炫酷底部美化代码介绍 这段代码采用了最新的前端技术&#xff0c;确保在各种浏览器和设备上都能完美展现。它包含响应式设计元素&#xff0c;这意味着无论用户是通过电脑、平板还是手机访问您的网站&#xff0c;底部都能呈现出最佳的效果。 此外&#xff0c;我们还特别注…

【51单片机】实现一个动静态数码管显示项目(超全详解&代码&图示)(5)

前言 大家好吖&#xff0c;欢迎来到 YY 滴单片机 系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过单片机的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY…

海外云手机——平台引流的重要媒介

随着互联网的飞速发展&#xff0c;跨境电商、短视频引流以及游戏行业等领域正经历着迅猛的更新换代。在这个信息爆炸的时代&#xff0c;流量成为至关重要的资源&#xff0c;而其中引流环节更是关乎业务成功的关键。海外云手机崭露头角&#xff0c;成为这一传播过程中的重要媒介…

STM32/C51开发环境搭建(KeilV5安装)

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统&#xff0c;与汇编相比&#xff0c;C语言在功能上、结构性、可读性、可维护性上有明显的优势&#xff0c;因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等…

分享78个行业PPT,总有一款适合您

分享78个行业PPT&#xff0c;总有一款适合您 78个行业PPT下载链接&#xff1a;https://pan.baidu.com/s/19UL58I5Z1QZidVrq50v6fg?pwd8888 提取码&#xff1a;8888 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不易…

【数据结构】二叉树的三种遍历(非递归讲解)

目录 1、前言 2、二叉树的非递归遍历 2.1、先序遍历 2.2、中序遍历 2.3、后序遍历 1、前言 学习二叉树的三种非递归遍历前&#xff0c;首先来了解一下递归序&#xff1a; 递归序就是按照先序遍历的顺序&#xff0c;遇到的所有结点按顺序排列&#xff0c;重复的结点也必须记…

芯片设计方法学之--握手

1.面向对象 本文主要介绍握手的基本概念&#xff0c;读者可通过该篇文章对握手有个基本概念。也借此机会发表下自己对流水线中的握手反压的一些愚见。更深的理解可期待后续更新&#xff1b; 2. 握手简介 举个简单例子&#xff1b; 上图中sender拉高vld发送有效的数据给recei…

【芯片设计- RTL 数字逻辑设计入门 11.1 -- 状态机实现 移位运算与乘法 1】

文章目录 移位运算与乘法状态机简介SystemVerilog中的测试平台VCS 波形仿真 阻塞赋值和非阻塞赋值有限状态机&#xff08;FSM&#xff09;与无限状态机的区别 本篇文章接着上篇文章【芯片设计- RTL 数字逻辑设计入门 11 – 移位运算与乘法】 继续介绍&#xff0c;这里使用状态机…

【JS逆向八】逆向某企查网站的headers参数,并模拟生成 仅供学习

逆向日期&#xff1a;2024.02.07 使用工具&#xff1a;Node.js 加密方法&#xff1a;未知 / 标准库Hmac-SHA512 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 可使用AES进行解密处理&#xff08;直接解密即可&#xff09;&#xff1a;AES加…

ChatGPT高效提问—prompt常见用法(续篇五)

ChatGPT高效提问—prompt常见用法&#xff08;续篇五&#xff09; 1.1 种子词 ​ 种子词&#xff08;seed word&#xff09;通常指的是在对话中使用的初始提示或关键词&#xff0c;用于引导ChatGPT生成相关回复。种子词可以是一个词、短语或句子&#xff0c;通常与对话的主题…