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

淘客怎样做自己的网站收录情况有几种

淘客怎样做自己的网站,收录情况有几种,网站设置搜索时间,有没有免费的网站空间一、原型和原型链的比喻 想象一个家族: 每个对象:像家族中的一个成员原型(prototype):家族的族谱(记录共有特征)原型链:成员通过族谱向上查找祖先的特征(比如爷爷会武术…

一、原型和原型链的比喻

想象一个家族:

  • 每个对象:像家族中的一个成员
  • 原型(prototype):家族的族谱(记录共有特征)
  • 原型链:成员通过族谱向上查找祖先的特征(比如爷爷会武术,爸爸也会,孙子也能学)

二、核心概念拆解

1. 构造函数(爸爸)
// 构造函数(像家族的爸爸)
function Person(name) {this.name = name;
}// 原型对象(族谱)
Person.prototype.sayHello = function() {console.log(`我是${this.name}`);
};
2. 实例对象(儿子)
const 小明 = new Person("小明");
小明.sayHello(); // "我是小明" (调用原型上的方法)
3. 原型链的链接关系
  • prototype:构造函数的属性,指向原型对象(族谱)
  • __proto__(非标准,实际用 Object.getPrototypeOf()):实例的属性,指向构造函数的原型对象
  • constructor:原型对象的属性,指回构造函数

关系图

小明(实例)↓ __proto__
Person.prototype(原型)↓ __proto__
Object.prototype(顶级原型)↓ __proto__
null(终点)

三、原型链的工作原理

1. 查找属性的过程

当访问对象的属性时,JS 会:

  1. 先检查对象自身是否有该属性
  2. 如果没有,顺着 __proto__ 向上查找原型对象
  3. 直到找到 Object.prototype,若还没有则返回 undefined

代码示例

function Person() {}
Person.prototype.skill = "武术";const 小明 = new Person();
console.log(小明.skill); // "武术"(来自原型)
console.log(小明.toString()); // "[object Object]"(来自Object.prototype)

四、原型链的三大特点

1. 继承共享
  • 优点:所有实例共享原型上的方法,节省内存
  • 代码验证
    const 小红 = new Person("小红");
    console.log(小明.sayHello === 小红.sayHello); // true(共享同一方法)
    
2. 动态性

修改原型对象的属性,所有实例会立即生效

Person.prototype.run = function() { console.log("跑步"); };
小明.run(); // "跑步"(即使小明在修改前创建)
3. 原型链终点是 null
console.log(Object.prototype.__proto__); // null

五、手动实现原型链

场景:让「学生」继承「人」的原型
// 父类构造函数
function Person(name) {this.name = name;
}
Person.prototype.sayHello = function() {console.log(`你好,我是${this.name}`);
};// 子类构造函数
function Student(name, grade) {Person.call(this, name); // 继承属性this.grade = grade;
}// 继承方法:将 Student 的原型指向 Person 的实例
Student.prototype = Object.create(Person.prototype);
Student.prototype.constructor = Student; // 修复构造函数指向// 子类扩展方法
Student.prototype.study = function() {console.log(`${this.name}正在学习`);
};// 测试
const 学生小明 = new Student("小明", "六年级");
学生小明.sayHello(); // "你好,我是小明"(继承自Person)
学生小明.study();    // "小明正在学习"(自身方法)

六、常见面试问题

1. hasOwnProperty 的作用

判断属性是自身所有还是继承自原型链:

小明.hasOwnProperty("name"); // true(自身属性)
小明.hasOwnProperty("sayHello"); // false(来自原型)
2. 原型链 vs 类继承
  • 原型链:JavaScript 的底层实现方式
  • 类继承(ES6 class:语法糖,底层依然基于原型链

总结

  • 原型:对象的「族谱」,存放共享属性和方法
  • 原型链:通过 __proto__ 向上查找的链条
  • 核心价值:实现继承、共享方法、节省内存
http://www.dtcms.com/wzjs/125098.html

相关文章:

  • 设计案例分享网站互联网关键词优化
  • 湖北网站建设报价网站分析工具
  • 北京网站建设公seo是指什么
  • 做推广网站费用企业网站seo贵不贵
  • 动漫网站怎么做天猫代运营
  • 龙华做棋牌网站建设哪家好安徽搜索引擎优化seo
  • 建设本地端网站企业网站设计价格
  • 尤溪住房和城乡建设局网站360建网站
  • wordpress 商品表单seo 页面链接优化
  • 快站微信网站制作网络营销个人感悟小结
  • 网站权重高 做别的关键词广西seo
  • 政府网站前台模板网站建设的流程是什么
  • 阜宁专业做网站知名网络推广
  • 网页打不开无法连接服务器武汉seo关键词优化
  • 昆明网站建设哪家好抖音优化是什么意思
  • 杭州专业网站建设公司抖音竞价推广怎么做
  • wordpress侧边浮动济南seo优化外包服务公司
  • 网站商城怎么做的如何推广一个产品
  • wordpress又拍云本地备份真人seo点击平台
  • 拼多多采用了哪些网络营销方式seo权重优化
  • 咸阳住房和城乡建设局网站安卓优化大师老版本下载
  • 权威的南昌网站设计360推广
  • 做网站按什么收费多少浙江专业网站seo
  • 网站的动态文字是怎么做的百度下载app下载安装到手机
  • 网络编程就是做网站么网络服务中心
  • 云南网站建设一条龙网络推广赚钱项目
  • 想做cpa 没有网站怎么做国内ip地址 免费
  • 成都公司展厅设计公司seo查询 站长之家
  • 网站的详细设计站长字体
  • 显示官网字样的网站怎么做东莞网络推广托管