在duktape中运行构造函数时如何获取类名?

时间:2017-09-15 14:52:34

标签: duktape

我想使用单个duktape / C构造函数作为这类调用的调度程序。调用调度程序函数时,我需要知道发生了哪个类来调用适当的C ++构造函数。

我认为this绑定不会有帮助,因为它代表了我们在这里创建的(尚未完全初始化的)JS对象。

另一种选择是当前的功能,但是从文档中我无法看到如何从中获取类名。我还能用什么呢?

1 个答案:

答案 0 :(得分:0)

你能用“班级名称”详细说明你的意思吗?你的意思是Ecmascript函数对象的.name属性用作“新”目标吗?

如果是这样,您可以使用duk_is_constructor_call()查看当前调用是否为构造函数调用,然后使用duk_push_current_function()访问Ecmascript构造函数对象,然后使用通常的方法读取其属性属性API调用。例如,如果通过“类名”表示函数对象的.name,则只需使用duk_get_prop_string()读取其“name”属性。