Я получил следующий код:
function test () {
this.testFunction = function () {
//code to alert or return the string "testFunction"
}
}
var testVar = new test();
testVar.testFunction();
Есть ли способ узнать имя свойства, которому назначена безымянная функция? Все, что я пробовал в сочетании с методами "вызывающего" и "вызываемого", не принесло никакого успеха.
Edit:
Причина, по которой я хотел бы получить имя свойства, состоит в том, чтобы использовать его для отладки сообщений, когда мне не нужно вручную передавать имя свойства в регистратор. Производительность не будет проблемой, так как это только для процесса разработки.
На самом деле предложение назвать функцию - хорошая идея ... Я думаю. Есть ли у этого какие-либо очевидные / хорошо известные побочные эффекты, помимо необходимости дважды вводить имя функции? : -Р
Кроме того, это привело меня к идее добавить комментарий в начале функции, которая выглядит примерно так:
/* $$NAME$$="testFunction" */
и который также может быть проанализирован - но комментарии JavaScript, похоже, обрезаны в FireFox (в отличие от IE), и я скорее предпочитаю FF для разработки. Будет ли способ также отображать / использовать комментарии JS в FF при использовании свойства "caller" / "callee"?