当前位置: 首页 > news >正文

淘宝毕业设计网站代做湖北企业建站系统平台

淘宝毕业设计网站代做,湖北企业建站系统平台,Aspire Pro wordpress,wordpress 开启xml-rpc原型和原型链是 JavaScript 中实现对象继承和属性查找的核心机制。为了更深入地理解它们#xff0c;我们需要从底层原理、实现机制以及实际应用等多个角度进行分析。 1. 原型#xff08;Prototype#xff09; 1.1 什么是原型#xff1f; 每个 JavaScript 对象#xff08…原型和原型链是 JavaScript 中实现对象继承和属性查找的核心机制。为了更深入地理解它们我们需要从底层原理、实现机制以及实际应用等多个角度进行分析。 1. 原型Prototype 1.1 什么是原型 每个 JavaScript 对象除 null 外都有一个内部属性 [[Prototype]]指向它的原型对象。原型对象也是一个普通对象它包含可以被其他对象共享的属性和方法。通过 __proto__非标准但广泛支持或 Object.getPrototypeOf() 可以访问对象的原型。 1.2 构造函数与原型 每个函数构造函数都有一个 prototype 属性指向一个对象这个对象是该构造函数实例的原型。当使用 new 关键字创建实例时实例的 [[Prototype]] 会指向构造函数的 prototype 对象。 function Person(name) {this.name name; }// 在构造函数的原型上添加方法 Person.prototype.sayHello function() {console.log(Hello, my name is ${this.name}); };const person1 new Person(Alice); person1.sayHello(); // 输出: Hello, my name is Alice在上面的例子中 Person.prototype 是 person1 的原型对象。person1.__proto__ 指向 Person.prototype。 2. 原型链Prototype Chain 2.1 什么是原型链 原型链是由对象的 [[Prototype]] 连接起来的链式结构。当访问对象的属性或方法时如果对象本身没有该属性JavaScript 会沿着原型链向上查找直到找到该属性或到达原型链的顶端null。 2.2 原型链的顶端 所有对象的原型链最终都会指向 Object.prototype而 Object.prototype 的 [[Prototype]] 是 null。如果在整个原型链中都找不到属性则返回 undefined。 console.log(person1.toString()); // 输出: [object Object]在上面的例子中 person1 本身没有 toString 方法。JavaScript 引擎会沿着原型链查找 person1 - 没有 toString。person1.__proto__即 Person.prototype - 没有 toString。Person.prototype.__proto__即 Object.prototype - 找到 toString调用它。 3. 原型链的深度分析 3.1 原型链的构建 原型链是通过 [[Prototype]] 连接起来的。当我们创建一个对象时它的 [[Prototype]] 会指向某个原型对象。 const obj {}; console.log(obj.__proto__ Object.prototype); // true如果我们手动修改 [[Prototype]]可以构建自定义的原型链。 const parent { name: Parent }; const child Object.create(parent); // child.__proto__ 指向 parent console.log(child.name); // 输出: Parent3.2 原型链的查找机制 当访问对象的属性时JavaScript 引擎会按照以下步骤查找 检查对象自身是否有该属性。如果没有沿着 [[Prototype]] 向上查找。重复这个过程直到找到属性或到达 null。 const grandparent { familyName: Smith }; const parent Object.create(grandparent); const child Object.create(parent);console.log(child.familyName); // 输出: Smith在上面的例子中 child 自身没有 familyName。child.__proto__即 parent也没有 familyName。parent.__proto__即 grandparent有 familyName返回 Smith。 4. 原型链与继承 4.1 基于原型的继承 JavaScript 通过原型链实现继承。子类的原型对象指向父类的实例从而继承父类的属性和方法。 function Person(name) {this.name name; }Person.prototype.sayHello function() {console.log(Hello, my name is ${this.name}); };function Student(name, grade) {Person.call(this, name); // 调用父类构造函数this.grade grade; }// 继承父类原型 Student.prototype Object.create(Person.prototype); Student.prototype.constructor Student; // 修复构造函数指向const student1 new Student(Bob, 10); student1.sayHello(); // 输出: Hello, my name is Bob在上面的例子中 Student.prototype 的原型指向 Person.prototype。student1 可以访问 Person.prototype 上的方法。 4.2 原型链的局限性 原型链继承是单向的子类可以访问父类的属性和方法但父类不能访问子类的属性和方法。如果原型链过长属性查找的性能会受到影响。 5. 原型链的实际应用 5.1 共享方法 将方法定义在原型上可以避免每个实例都创建一份方法的副本节省内存。 function Person(name) {this.name name; }Person.prototype.sayHello function() {console.log(Hello, my name is ${this.name}); };const person1 new Person(Alice); const person2 new Person(Bob);// person1 和 person2 共享同一个 sayHello 方法 console.log(person1.sayHello person2.sayHello); // true5.2 扩展内置对象 可以通过修改内置对象的原型来扩展其功能。 Array.prototype.last function() {return this[this.length - 1]; };const arr [1, 2, 3]; console.log(arr.last()); // 输出: 36. 总结 原型每个对象都有一个 [[Prototype]]指向它的原型对象。原型链通过 [[Prototype]] 连接起来的链式结构用于属性查找。继承通过原型链实现对象之间的继承。性能原型链过长会影响查找性能需谨慎设计。 理解原型和原型链是掌握 JavaScript 面向对象编程的关键也是深入理解 JavaScript 运行机制的基础。
http://www.w-s-a.com/news/59861/

相关文章:

  • 只做黑白摄影的网站网站建设好后给领导作介绍
  • 移动手机网站建设如何做网站地图视频
  • 手工业网站怎么做成都酒吧设计公司
  • .net 网站生成安装文件目录重庆网站建设沛宣网络
  • 怎么做钓鱼网站吗百度免费域名注册网站
  • 如何给网站做外部优化今年国内重大新闻
  • 有没有做生物科技相关的网站弄一个app大概多少钱
  • 五金加工东莞网站建设怎么做网页跳转
  • 淄博网站优化价格wordpress没有小工具
  • 自己搭建服务器做视频网站wordpress发布文章 发布
  • php仿博客园网站阅读分享网站模板
  • 网站宣传的劣势域名注册长沙有限公司
  • 怎样联系自己建设网站企业怎样做好网站建设
  • 网站制作需求分析电商网站建设浩森宇特
  • 淄博网站建设招聘摄影网站建设的论文
  • 怎么把凡科网里做的网站保存成文件网站建设研究的意义
  • 服务器2003怎么做网站网站建设服务器的配置
  • 高校网站建设方案网站推广软件下载安装免费
  • 重庆没建网站的企业网站开发软件 连接SQL数据库
  • 百度申诉网站沉默是金
  • 如何自己建网站wordpress图片延时加载
  • 甘肃省住房和城乡建设厅注册中心网站千博企业网站管理系统2013
  • 西餐厅网站模板seo搜索引擎优化ppt
  • 什么做的网站吗wordpress注册可见插件
  • 献县做网站价格可以提升自己的网站
  • 如何修改网站title建设网站只能是公司
  • 网站推广效果怎么样建设工程公司组织架构图
  • 成都制作网站价格表网站安全证书过期怎么办
  • 高校图书馆网站的建设方案湖南常德市
  • 房地产怎么做网站推广wordpress插件汉化下载