TypeScript:在运行时获取类名?

时间:2014-04-01 05:00:17

标签: reflection typescript

在C#中,使用Reflection可以很容易地在运行时获取类名。 在TypeScript中可以吗?

1 个答案:

答案 0 :(得分:6)

在运行时,您正在运行JavaScript。因此,您可以查看此answer了解详细信息。

  

这是一个可以满足您需求的黑客 - 请注意它会修改   对象的原型,人们皱眉的东西(通常是好的   原因)

Object.prototype.getName = function() { 
   var funcNameRegex = /function (.{1,})\(/;
   var results = (funcNameRegex).exec((this).constructor.toString());
   return (results && results.length > 1) ? results[1] : "";
};
  

现在,所有对象都将具有getName()函数   将构造函数的名称作为字符串返回。我已经测试了这个   FF3和IE7,我不能代表其他实现。