继承和具有本机duktape / C函数的构造函数链

时间:2017-09-21 08:59:02

标签: duktape

使用本机函数实现类构造函数是described in the duktape wiki。然而,遗漏的是如何实现类层次结构。

当为派生类调用本机构造函数时,如何处理duktape中的继承链?在Javascript中,您通常会执行以下操作:

function Base(){
}

...

function SubClass(){
    // Call super constructor.
    Base.call(this);
}

你如何在duktape中实现它?我们无法使用duk_call(),因为我们没有方法可以调用。

1 个答案:

答案 0 :(得分:1)

如果您只想要与Ecmascript示例中相同的行为,则可以执行以下操作:

duk_get_global_string(ctx, "Base");
duk_push_this(ctx);
duk_call_method(ctx, 0);  /* = Base.call(this) */