2014-07-24 46 views
1

我不確定這是不是一個好主意,但我希望能夠在被調用時從其中獲取函數的名稱。我在下面寫的測試代碼似乎工作,因爲它不會導致名稱衝突,但我不能不知道函數的名稱。如何在被調用時獲取函數名稱?

function And(){ 
    return "test"; 
}; 
var X = { 
    And: function And(){ 
     return this.And.name; 
    } 
}; 
document.write(X.And()); 

有什麼辦法可以實現這一點,而不涉及綁定上下文(即'this'的值)的函數?

回答

2

Function.caller或arguments.callee.name

不過是arguments.callee()ES5下不起作用。而Function.caller不是標準的。

相關問題