1
我正在寫調試工具,我想清楚我在哪裏。我的理想的輸出會寫的類名和函數名到控制檯,像這樣:如果我給你一個函數的參考,你可以得到函數的名字?
Vehicle.addWheels()
Wheels were added by the user
,並在代碼中這將是一個功能,如:
trace(addWheels, "Wheels were added by the user");
我想編寫自定義功能這得到像這樣(僞代碼)的詳細信息:
public static myTrace(function:Function, message:String):void {
var className:String = function.parent;
var functionName:String = getQualifiedName(function.prototype);
trace(className + "." + functionName + ": " + message);
}
這是一個AS3的例子,但AS3是基於JavaScript的,所以如果它工作在Javascript可以在ActionScript工作。
如果這不起作用,我可以輕鬆地使用第三個參數傳入類的引用,但仍然需要知道如何獲取函數的名稱。
public static myTrace(object:Object, function:Function, message:String):void {
var className:String = getQualifiedName(object);
var functionName:String = getQualifiedName(function.prototype);
trace(className + "." + functionName + ": " + message);
}
我希望它的幫助http://stackoverflow.com/questions/4731935/actionscript-obtain-the-name-of-the-current-function –
這有益於@payamsbr謝謝! –