gpt4 book ai didi

javascript - 在 Javascript 中扩展对象

转载 作者:IT老高 更新时间:2023-10-28 13:18:39 24 4
gpt4 key购买 nike

我目前正在从 Java 转换为 Javascript,我有点难以弄清楚如何按照我想要的方式扩展对象。

我在互联网上看到有几个人使用了一种名为 extend on object 的方法。代码将如下所示:

var Person = {
name : 'Blank',
age : 22
}

var Robot = Person.extend({
name : 'Robo',
age : 4
)}

var robot = new Robot();
alert(robot.name); //Should return 'Robo'

有谁知道如何进行这项工作?我听说你需要写

Object.prototype.extend = function(...);

但我不知道如何使这个系统工作。如果不可能,请告诉我另一个扩展对象的替代方法。

最佳答案

您想从 Person 的原型(prototype)对象“继承”:

var Person = function (name) {
this.name = name;
this.type = 'human';
};

Person.prototype.info = function () {
console.log("Name:", this.name, "Type:", this.type);
};

var Robot = function (name) {
Person.apply(this, arguments);
this.type = 'robot';
};

Robot.prototype = Person.prototype; // Set prototype to Person's
Robot.prototype.constructor = Robot; // Set constructor back to Robot

person = new Person("Bob");
robot = new Robot("Boutros");

person.info();
// Name: Bob Type: human

robot.info();
// Name: Boutros Type: robot

关于javascript - 在 Javascript 中扩展对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10430279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com