Я пытаюсь получить имя запущенной функции. Из того, что я прочитал, это должно быть возможно с помощью:
(arguments.callee.toString()).match(/function\s+(\[^\s\(]+)/)
Однако, когда я запускаю это в Firefox и Safari (последние версии для Mac), имя не возвращается.
console.log (arguments.callee) возвращает источник функции, но не назначенное имя. arguments.callee.name возвращает пустую строку.
Мой пример кода выглядит следующим образом:
var testobj = {
testfunc: function(){
console.log( (arguments.callee.toString()).match(/function\s+(\[^\s\(]+)/) );
}
}
testobj.testfunc();