javascript - 从 javascript 中的对象初始值设定项继承

标签 javascript inheritance

我是 JavaScript 新手。我已经使用对象初始值设定项方法定义了一个对象。

var obj = { a : "A";
            b : "B";
            myFunc = function() {
                alert("Hello"):
            }

现在我想创建另一个对象,该对象将成为 Obj 的子对象。我怎样才能做到这一点。

var obj1 = new obj();

不工作。

最佳答案

首先,您有一个语法错误

myFunc = function() { ...

无论如何,这就是您想要的设置方式

function Foo() {
  this.a = "A";
  this.b = "B";
}

Foo.prototype.myFunc = function() {
  alert("hello");
};

现在创建您的子对象

function Bar() {
  Foo.call(this); // call parent constructor; optional
}

// setup child prototype
Bar.prototype = Object.create(Foo.prototype);
Bar.prototype.constructor = Bar;

检查一下

var b = new Bar();

b instanceof Bar; // true
b instanceof Foo; // true

b.constructor.name; // Bar

b.myFunc; // "hello"

关于javascript - 从 javascript 中的对象初始值设定项继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20344341/

相关文章:

javascript - 如何确保我使用最新的 Promise()

javascript - 在 jQuery 中获取输入值

c++ - 如何从非直接父基类继承构造函数

javascript - 我可以在不使用 new 关键字的情况下构造 JavaScript 对象吗?

c++ - 如何继承成员函数以便它始终返回对派生实例的引用?

vb.net - “PlotBackBrush”无法通过类 'IRectangleBrush' 在项目外部公开类型 'PlotSurface2D'

javascript - 在 Rails 博客确认删除消息中包含 <%= post.title %>

javascript - 如何操作 Twilio 数据对象? Node JS

javascript - 使用 Javascript 从 JSON 中获取数据

c++ - 错误 C2679 : binary '==' : no operator found which takes a right-hand operand of type