【问题标题】:How to get an object name? [duplicate]如何获取对象名称? [复制]
【发布时间】:2012-02-16 02:55:03
【问题描述】:

我有以下代码sn-p

function receiver(callback)
{
    console.log( callback );
}

function callback(){}

receiver( new callback() );

OUTPUT: callback {}

有没有一种方法或方法可以从回调参数中获取“回调”?我喜欢获取对象的名称。

【问题讨论】:

标签: javascript


【解决方案1】:
> function callback(){}
undefined
> a = new callback();
[object Object]
> a.constructor.name
callback>

但是,它不适用于任何匿名函数(一切都在标题中):

> callback = function(){};
function () {}
> c = new callback();
[object Object]
> c.constructor.name
(empty string)

【讨论】:

    【解决方案2】:

    试试:

    function receiver(callback){
        console.log(callback.constructor.name);
    }
    
    function callback(){}
    
    receiver(new callback());
    

    看看:javascript introspection in 90 seconds

    【讨论】:

      猜你喜欢
      • 2018-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-08
      • 2010-12-05
      • 2016-09-03
      相关资源
      最近更新 更多