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

成都家具企业网站建设大数据下的精准营销

成都家具企业网站建设,大数据下的精准营销,做网站备案时审批号,网站建设佰首选金手指二七在JavaScript中,constructor、prototype和__proto__是与对象创建和继承机制紧密相关的三个概念。理解它们之间的关系对于掌握JavaScript的面向对象编程至关重要。下面将详细介绍这个魔法三角: 1. constructor 定义:constructor是一个函数&am…

在JavaScript中,constructorprototype__proto__是与对象创建和继承机制紧密相关的三个概念。理解它们之间的关系对于掌握JavaScript的面向对象编程至关重要。下面将详细介绍这个魔法三角:

1. constructor

  • 定义constructor是一个函数,它被用来初始化一个新创建的对象实例。当使用new关键字创建一个新的对象时,构造函数会被调用。

  • 作用:主要负责为新创建的对象设置初始属性和方法。

  • 示例

    function Person(name, age) {this.name = name;this.age = age;
    }const Kobe = new Person('Kobe', 24);
    

2. prototype

  • 定义:每个函数都有一个prototype属性,它是一个对象,用于存储可以被该函数的所有实例共享的方法和属性。

  • 作用:通过prototype属性,可以实现原型链继承,允许子类继承父类的属性和方法。

  • 示例

    Person.prototype.greet = function() {console.log(`my name is ${this.name}.`);
    };const Kobe = new Person('Kobe', 24);
    Kobe.greet(); // "my name is kobe."
    

3. __proto__

  • 定义__proto__是每个对象的一个内部属性(非标准属性),指向该对象的原型对象。在ES6中,推荐使用Object.getPrototypeOf()Object.setPrototypeOf()来获取或设置原型。

  • 作用__proto__是原型链的核心,当尝试访问一个对象的属性时,如果该对象本身没有这个属性,JavaScript引擎会沿着__proto__链向上查找,直到找到该属性或者到达原型链的末端(通常是null)。

  • 示例

    const Kobe = new Person('Kobe', 24);
    console.log(Kobe.__proto__ === Person.prototype); // true
    

4. 关系

  • 构造函数与prototype

    • 每个构造函数都有一个prototype属性,这是一个对象,包含所有实例共享的方法和属性。
    • 当使用new关键字创建对象时,新对象的__proto__属性会被设置为构造函数的prototype对象。
  • __proto__与原型链

    • __proto__属性使得对象能够访问其构造函数prototype上的方法和属性。
    • 通过__proto__,可以形成一个从子对象到父对象的链式结构,即原型链。
  • constructorprototype

    • prototype对象上有一个默认的constructor属性,它指向构造函数本身。
    • 这个constructor属性可以帮助我们识别一个对象是由哪个构造函数创建的。

5. 图解

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

6. 示例代码

function Person(name, age) {this.name = name;this.age = age;
}// 在构造函数的原型上添加方法
Person.prototype.greet = function() {console.log(`my name is ${this.name}.`);
};const Kobe = new Person('Kobe', 24);// 查看Kobe的原型
console.log(Kobe.__proto__ === Person.prototype); // true// 查看Person.prototype的constructor属性
console.log(Person.prototype.constructor === Person); // true// 使用Kobe调用greet方法
Kobe.greet(); // "my name is Kobe."// 原型链
console.log(Object.getPrototypeOf(Kobe) === Person.prototype); // true

7. 总结

  • constructor:构造函数,用于初始化新创建的对象实例。
  • prototype:构造函数的原型对象,用于存储可以被所有实例共享的方法和属性。
  • __proto__ :对象的内部属性,指向该对象的原型对象,用于实现原型链继承。

这就是JS的魔法三角吗?看起来并不难吧?

http://www.15wanjia.com/news/27772.html

相关文章:

  • 优秀平面设计网站商业推广费用一般多少
  • 九江室内设计学校站长工具seo推广 站长工具查询
  • 建设企业银行怎么转账网站推广优化是什么意思
  • 网站开发过程记录如何建网站要什么条件
  • 深圳平湖网站建设公司国家免费技能培训官网
  • 做的网站在百度上搜不出来的系统优化的例子
  • 有哪些网站做美食的图片很精致网络营销网站设计
  • 金华做网站建设公司优化疫情防控措施
  • 南昌网络营销外包公司长春seo排名扣费
  • 建设银行官方网站首页入口seo中文含义
  • 天津b2b网站建设报价写手接单平台
  • 公司网站怎么做才高大上关键词排名靠前
  • 网站内做营销活动使用工具合肥建站公司seo
  • wordpress 设置登陆界面深圳搜索引擎优化seo
  • 互动式网站开发制作网页链接
  • 绩溪网站建设长沙百度关键词推广
  • 网站 微站建设排名百度推广登录入口
  • wordpress全自动赚钱博客seo教程
  • pc网站做app京东搜索引擎大全全搜网
  • 网站建设建材厦门网站建设公司哪家好
  • 盐城企业做网站多少钱seo外包公司是啥
  • wordpress建站网站报错山东seo首页关键词优化
  • 墨刀做网站上下滑动的交互西安百度关键词排名服务
  • 东莞网站推广排名网络营销app有哪些
  • 建站推广什么意思电商代运营公司
  • terry tao.wordpress青岛网站seo推广
  • 苗木企业网站建设源代码可靠的网站优化
  • 西安网站建设哪家专业最新新闻事件今天
  • 油金地 做网站百度关键词推广帝搜软件
  • 可以做的电影网站新闻头条今日要闻军事