如何从超类中获取Node.js中的构造函数名称

时间:2014-09-30 22:31:36

标签: javascript node.js dkan

我的Node.js应用程序中有一个“超级”模块,带有构造函数和一些原型函数。

var parser = function(options, util, cache, url) {

    this.options        = options;
    this.util           = util;
    this.cache          = cache;
    this.url            = url;
}

parser.prototype.start = function() {
    console.log("I am a default start function");
    console.log(this.constructor.name);
}

module.exports = parser;

我有一些继承自这个模块的其他模块。现在,当我调用start函数时,我想得到该模块的构造函数的名称。出于某种原因,这对我不起作用。

var parser = require('../parser');
var util   = require('util');

var DKAN = function(options, util, cache, url) {

    parser.apply(this,arguments);

}

util.inherits(DKAN, parser);

DKAN.prototype.check = function($) {
    var DKANParser = this;
    if ($('meta[content*="Drupal"]').length !== 0 ) {
        DKANParser.start();
        return true;
    } else return false;
}

module.exports = DKAN;

当调用DKANParser.start()时,我只得到第一个console.log“我是默认启动函数”,并且无法获得构造函数的名称,该应该是DKAN

0 个答案:

没有答案