您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

JavaScript中构造函数中的继承是如何工作的?

2024/5/11 3:44:33发布35次查看
在本文中,我们将讨论javascript中继承的工作原理以及如何在javascript的构造函数中利用这种面向对象编程特性。
我们还将简要介绍javascript中的原型对象。因此,对此有一些先前的了解将会非常感激。
在javascript中,继承是一种机制,通过该机制,一个对象可以从另一个对象继承属性和方法。这可以通过使用构造函数和原型属性来实现。
在创建构造函数时,您可以使用原型属性向构造函数的原型对象添加属性和方法。然后,使用构造函数创建的任何对象都会继承这些属性和方法。
示例让我们通过以下示例来理解:
function person(name, age) { this.name = name; this.age = age;}person.prototype.getname = function() { return this.name;};
在这个例子中,person构造函数具有name和age属性以及一个getname方法。使用person构造函数创建的任何对象都会从原型继承这些属性和方法。
您还可以通过使用call或apply方法调用父构造函数并将this作为第一个参数传递来创建一个从现有构造函数继承的新构造函数。
示例以下是javascript中继承工作的完整示例:
// parent constructor functionfunction person(name, age) { this.name = name; this.age = age;}// adding a method to the prototypeperson.prototype.getname = function() { return this.name;};// child constructor functionfunction employee(name, age, company) { // calling the parent constructor function person.call(this, name, age); this.company = company;}// setting the prototype of the child constructor functionemployee.prototype = object.create(person.prototype);employee.prototype.constructor = employee;// adding a method to the child constructor functionemployee.prototype.getcompany = function() { return this.company;};const employee1 = new employee(john, 25, google);console.log(employee1.name); // johnconsole.log(employee1.age); // 25console.log(employee1.getname()); // johnconsole.log(employee1.getcompany()); // google
在这个例子中,我们有一个父构造函数叫做person,它接受一个名字和年龄参数,同时它有一个叫做getname()的方法,它被添加到person构造函数的原型中。然后我们有一个子构造函数叫做employee,它继承了person构造函数的属性和方法。employee构造函数接受一个额外的公司参数,同时它有一个叫做getcompany()的方法,它被添加到employee构造函数的原型中。
所以,在javascript中,构造函数可以用来创建继承自父对象的属性和方法的对象,这可以通过向构造函数的原型对象添加属性和方法,或者通过创建一个继承自现有构造函数的新构造函数来实现。
以上就是javascript中构造函数中的继承是如何工作的?的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product