泰州网站建设服务好兄弟们拿走不谢

web/2025/10/3 21:32:28/文章来源:
泰州网站建设服务好,兄弟们拿走不谢,黄岛网站建设哪家权威,网站网络建设原型与原型链 原型 在js中#xff0c;每个对象都有一个原型#xff08;prototype#xff09;。原型是一个对象#xff0c;其他对象可以通过原型来共享属性和方法。当我们创建一个对象时#xff0c;它会自动关联到一个原型对象。 例如#xff1a;function Person(name, a…原型与原型链 原型 在js中每个对象都有一个原型prototype。原型是一个对象其他对象可以通过原型来共享属性和方法。当我们创建一个对象时它会自动关联到一个原型对象。 例如function Person(name, age) { this.name name; this.age age; }// 在 Person 构造函数的原型上添加一个 greet 方法 Person.prototype.greet function() { console.log(Hello, my name is ${this.name}.); };const person1 new Person(Alice, 30); const person2 new Person(Bob, 25);person1.greet(); // 输出 Hello, my name is Alice. person2.greet(); // 输出 Hello, my name is Bob.在上面的代码中创建了一个Person对象有通过person创建了person1和person2对象这两个对象都关联到 Person.prototype 原型对象并且可以共享 greet 方法。原型链 原型链是福哦个对象通过原型链条连接在一起的数据结构。当访问一个对象的属性或方法时js引擎会先在对象本身中寻找如果找不到就会沿着原型链继续找知道找到该属性或方法或者达到原型链的顶端Object.prototype 。 举个例子 function Person(name, age) {this.name name;this.age age; }Person.prototype.greet function() {console.log(Hello, my name is ${this.name}.); };const person1 new Person(Alice, 30);console.log(person1.toString()); // 输出 [object Object] 在这个例子中 person1通过原型链继承了toString方法。 所以是Object.prototype原型链的顶端它是所有对象的原型包括内置对象和自定义对象。当查找属性或方法时原型链会一直往上查找直到 Object.prototype。如果在整个原型链上都找不到该属性或方法则返回 undefined。 原型链继承 原型继承是通过原型链来实现对象间的属性和方法共享。在原型继承中一个对象可以从另一个对象继承属性和方法这样可以实现对象之间的复用和扩展。 原型继承的基本概念如下 每个 JavaScript 对象都有一个原型对象prototype它是一个普通对象。当访问一个对象的属性或方法时如果该对象本身没有该属性或方法JavaScript 引擎会沿着原型链向上查找直到找到为止。原型链是由多个对象通过原型关联形成的链条最终的原型对象通常是 Object.prototype它是 JavaScript 中所有对象的原型。如果在整个原型链上都找不到该属性或方法则返回 undefined。 在原型继承中我们可以通过构造函数的原型对象来共享属性和方法。当使用 new 关键字调用构造函数创建对象时新对象会关联到该构造函数的原型从而继承原型上的属性和方法。 下面是一个使用原型继承的简单示例 // 定义一个 Person 构造函数 function Person(name) {this.name name; }// 在 Person 的原型上添加一个 greet 方法 Person.prototype.greet function() {console.log(Hello, my name is ${this.name}.); };// 使用 Person 构造函数创建两个对象 const person1 new Person(Alice); const person2 new Person(Bob);// 调用对象的 greet 方法 person1.greet(); // 输出 Hello, my name is Alice. person2.greet(); // 输出 Hello, my name is Bob.在上面的代码中Person 构造函数的原型对象上有一个 greet 方法通过 new Person() 创建的对象例如 person1 和 person2会共享这个方法。这样我们可以通过原型继承在多个对象之间共享方法提高代码的重用性和可维护性。 需要注意的是原型继承只能继承原型上的属性和方法而不能继承构造函数内部的局部变量。如果需要更灵活的继承方式可以考虑其他方式例如组合继承、原型式继承、寄生式继承等。 js的其他继承方式 组合继承 组合继承时结合了原型链继承和构造函数继承的一种继承方式。他通过在给子类的构造函数中调用父类的构造函数来继承父类的属性并通过将子类的原型指向一个新的创建的父类对象来继承的方法。 function Parent(name) {this.name name; }Parent.prototype.greet function() {console.log(Hello, my name is ${this.name}.); };function Child(name, age) {Parent.call(this, name); // 构造函数继承this.age age; }Child.prototype Object.create(Parent.prototype); // 原型链继承 Child.prototype.constructor Child;const child new Child(Alice, 5); child.greet(); // 输出 Hello, my name is Alice. 寄生式继承 寄生式继承是在原型式的基础上增强新对象添加额外的属性和方法。 function createPerson(proto, age) {const newPerson createObject(proto); // 原型式继承newPerson.age age; // 增强对象newPerson.introduce function() {console.log(I am ${this.name} and I am ${this.age} years old.);};return newPerson; }const person {name: Alice,greet: function() {console.log(Hello, my name is ${this.name}.);} };const newPerson createPerson(person, 30); newPerson.greet(); // 输出 Hello, my name is Alice. newPerson.introduce(); // 输出 I am Alice and I am 30 years old. 寄生组合式继承 寄生组合式继承是对组合继承的一种优化通过构造函数继承属性同时利用Object.create()方法来继承原型避免了调用父类构造函数时产生的不必要的属性重复赋值问题。 function Parent(name) {this.name name; }Parent.prototype.greet function() {console.log(Hello, my name is ${this.name}.); };function Child(name, age) {Parent.call(this, name); // 构造函数继承this.age age; }Child.prototype Object.create(Parent.prototype); // 原型链继承 Child.prototype.constructor Child;const child new Child(Alice, 5); child.greet(); // 输出 Hello, my name is Alice. 构造函数式继承 function Animal(name) {this.name name; }function Dog(name, breed) {Animal.call(this, name);this.breed breed; }const dog new Dog(Buddy, Golden Retriever); console.log(dog.name); // 输出 Buddy

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

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

相关文章

微信开放平台 网站开发临沂网站建设步骤

orm框架选型问题在过去的几年中,像Hibernate这样的对象关系映射工具已经帮助开发人员在处理关系数据库方面获得了巨大的生产力增长。 ORM使开发人员可以专注于应用程序逻辑,并避免为诸如插入或查询之类的简单任务编写大量样板SQL。 但是,充分…

网站建设大小pc网站怎么适配移动端

前段时间换了Tomcat6.0。一直都没配置mysql数据库数据源。今天想用时&#xff0c;既然按以前版本的方式配不上。。汗。。。后来上网查找才找到解决方案。写下这段话&#xff0c;以免忘记。。具体做法如下&#xff1a; 在$CATALINA_HOME/conf/server.xml文件中的<Host><…

北京网站建设产品介绍网站建设与功能模块

怎样在ArcGIS中保存地图模板以在地图制图与打印之前使用呢? 文章目录 一、地图模板简介二、地图模板创建1. 创建模板2. 创建缩略图3. 保存模板三、地图模板使用一、地图模板简介 使用ArcMap打开一个已有的地图模板,【文件】→【新建】,任选一个模板,这里选择一个传统模板。…

网站的建设费用分为青岛做公司网站

近似训练 近似训练&#xff08;Approximate Training&#xff09;是指在机器学习中使用近似的方法来训练模型&#xff0c;以降低计算复杂度或提高训练效率。这种方法通常用于处理大规模数据集或复杂模型&#xff0c;其中精确的训练算法可能过于耗时或计算资源不足。 近似训练…

平面设计师推荐网站施工企业科技创新规划

一、HashMap是什么&#xff0c;怎么用 1、HashMap是什么 HashMap 也是 Rust 标准库中提供的集合类型&#xff0c;但是又与动态数组不同&#xff0c;HashMap 中存储的是一一映射的 KV 键值对&#xff0c;并提供了平均时间复杂度为 O(1) 的查询方法。 2、HashMap怎么用 &…

罗湖高端网站设计常德市做网站联系电话

本文翻译自&#xff1a;Coco Test Engine – The New Era of Code Coverage Analysis 原文作者&#xff1a;Qt Group首席软件工程师Sbastien Fricker 审校&#xff1a;Felix Zhang 我们的Coco 7重大更新带来了一个长期以来备受期待的功能——测试数据生成&#xff08;即Coco …

手机网站排行榜策划案推广

今天配置了一下SharePoint Search&#xff0c;怕忘&#xff0c;赶紧记下来。 我参考了国外的一篇文章&#xff1a;Search Configuration in SharePoint 2010 首先&#xff0c;要查看以下User Profile Service, User Profile Synchronization Service是否运行正常&#xff0c;然…

长春市住房建设局网站南京比较好的网络策划公司

一、介绍 MiniConda 是一个轻量级的 Conda 版本&#xff0c;它是 Conda 的精简版&#xff0c;专注于提供基本的环境管理功能。Conda 是一个流行的开源包管理系统和环境管理器&#xff0c;用于在不同的操作系统上安装、管理和运行软件包。 与完整版的 Anaconda 相比&#xff0c…

网络推广网站培训千锋教育学费一览表

shell && 和 || 的短路使用 && 和 || 在 shell 中分别表示 and 和  or&#xff0c;和其它语言类似&#xff0c;这两个操作有短路效应。也就是说&#xff0c;当判断式已经确定时&#xff0c;不再继续处理后续表达式。 && 在失败时中断&#xff0c; || …

歌曲伴奏在线制作网站网页设计基础知识点考试

基础篇 MySQL概述 数据库概述 数据库相关概念 主流的关系型数据库管理系统 MySQL数据库的安装与启动 下载&#xff1a;MySQL :: MySQL Community Downloads 安装步骤 MySQL―8.0.40超详细保姆级安装教程_mysql8.0.40安装教程-CSDN博客文章浏览阅读1k次。_mysql8.0.40安装教…

网站集约化建设工作讲话微信电脑版下载官网

1.网络字节序 TCP/IP协议规定&#xff0c;网络数据流采用大端字节序&#xff0c;即低地址高字节。为了使网络程序具有可移植性&#xff0c;使得同样的C代码在大端和小端计算机上编译后都能正常运行&#xff0c;可以调用以下库函数做网络字节序和主机字节序的转换。 #include&…

html5手机微网站模板网络营销推广网站收录哪些

<input> 无限制输入 type 限制输入 type 如下类型 type 后还可以跟一些属性: 如<input typetext maxlength 10> 限制文本的长度为10字节 list 可以用的时候再来查, list就是当一个建议值不够的时候添加到几个. <form> <input typ…

做网站要学哪些建站网站主题设置不能点

保存至本地网盘 链接&#xff1a;https://pan.quark.cn/s/f82a1fa7ed87 提取码&#xff1a;6UUw 2025年“华数杯”国际大学生数学建模竞赛比赛时间于2025年1月11日&#xff08;周六&#xff09;06:00开始&#xff0c;至1月15日&#xff08;周三&#xff09;09:00结束&#xff…

手机搭建本地网站广州佛山建立网站的公司

为了配合微软下一代桌面操作系统—Windows7的发布&#xff0c;微软.NET俱乐部联合ZDNET至顶网社区特地组织了“让社区激情随Win 7 一同绽放”—Windows 7 社区发布会。10月24日13点半&#xff0c;将在北京&#xff0c;微软亚洲研究院地下一层阶梯会议中心举行&#xff0c;欢迎当…

明珠信息港网站建设专家多语种网站建设方案

​目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 基于长短期神经网络LSTM的回归分析 MATALB代码:基于长短期神经网络的回归分析,基于LSTM的回归预测资源-CSDN文库 https://download.csdn.net/download/abc991835105/88184633 效果图 结果分析 展望 参考论文 背影 LSTM神经…

北京网站设计公司jq成都柚米科技15临沂天元建设集团

目录 一、图像的基础知识 二、NumPy模块 三、图像色彩变化 3.1 RGB图像的分通道显示 3.2 HSV图像的分通道显示 一、图像的基础知识 总结的笔记&#xff1a; """ 二值图: 每个像素取值 0或1,图像显示出来只有黑白色; 黑色:0 白色:1 灰度图: …

网站平台推广清博大数据舆情监测平台

写在前面 使用Task类来控制多线程的同步执行&#xff0c;可应用于多任务分发执行后&#xff0c;再做归并处理。Tas既拥有线程池的优点&#xff0c;同时也解决了使用ThreadPool不易控制的弊端&#xff1b;可以非常简便并可靠地实现多线程的顺序执行。 代码实现 public class …

做网站建设多少钱公众号小程序制作平台

聊聊spring-cloud的负载均衡 1. 选择合适的负载均衡算法2. 合理设置超时时间3. 缓存服务实例列表4. 使用断路器5. 使用缓存Spring Cloud负载均衡组件对比RibbonLoadBalancerWebClient对比 总结 在微服务架构中&#xff0c;负载均衡是非常重要的一个环节&#xff0c;可以有效地提…

临沂网站制作方案三元里网站建设

最近在学习webpack&#xff0c;边学边练习&#xff0c;下面是对一些应用到的属性、插件记录分享出来&#xff0c;也方便以后查找与复习&#xff0c;过程中碰到了一些坑&#xff0c;在注释中有说明&#xff1a; const path require(path) const webpack require("webpack…

医院网站建设策划案模板做量化投资网站

在做vue多选框的时候&#xff0c;禁止多选&#xff0c;当时想都没想直接在computed里面把row-selection 直接当成方法写在里面了&#xff0c;但是后来发现一些状态不能用&#xff0c;比如清楚多选&#xff0c;selectedRowKeys没有效果&#xff0c;这里记录一下 // 最开始的代码…