Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.05.2013, 16:48
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Получить имя текущей ф-ции внутри ф-ции
Доброго времени суток, форумчане. Возможно по названию темы некоторым этот вопрос показался глупым, ибо зачем получать имя ф-ции?

Есть допустим такой код:

var addElement = function(a, b)
{
    var funcName = ????
    if(funcName == 'addElement') alert('Hello World!');
    else alert('Goodbay World!');
    //Code
}

var addText = addElement;


По сути, addText() будет одно и то же, что и addElement(). Но вот нужно определить с какой конкретно идёт обращение к ф-ции? Точнее, как определить имя этой ф-ции внутри ф-ции?
Буду благодарен за помощь.

Последний раз редактировалось ruslan_mart, 29.05.2013 в 17:51.
Ответить с цитированием
  #2 (permalink)  
Старый 29.05.2013, 17:40
Аватар для ANAGAMA
Аспирант
Отправить личное сообщение для ANAGAMA Посмотреть профиль Найти все сообщения от ANAGAMA
 
Регистрация: 29.05.2013
Сообщений: 49

типа такого

http://stackoverflow.com/questions/2...-in-javascript
Ответить с цитированием
  #3 (permalink)  
Старый 29.05.2013, 17:54
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

ANAGAMA, ну если было бы просто function addElement(), то да, а тут var addElement = function()
Ответить с цитированием
  #4 (permalink)  
Старый 29.05.2013, 18:10
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

addText и addElement в данном случае имена переменных и никакого отношения к самой функции не имеют.
__________________
29375, 35
Ответить с цитированием
  #5 (permalink)  
Старый 29.05.2013, 21:13
Аватар для zOdmin
Аспирант
Отправить личное сообщение для zOdmin Посмотреть профиль Найти все сообщения от zOdmin
 
Регистрация: 05.03.2012
Сообщений: 62

var addElement = function(a, b, funcName)
{
    //var funcName = ????
    if (!funcName) funcName='addElement';
    if(funcName == 'addElement') alert('Hello World!');
    else alert('Goodbay World!');
    //Code
}
 
var addText = function(a,b) { return addElement(a,b,'addText'); };
Ответить с цитированием
  #6 (permalink)  
Старый 29.05.2013, 23:04
Аспирант
Отправить личное сообщение для elnoro Посмотреть профиль Найти все сообщения от elnoro
 
Регистрация: 23.06.2011
Сообщений: 39

Завтра может допишу код, пока не могу.
Идея такова: берем this функции и проходимся по его свойствам, сравнивая toString() каждого свойства с toString() самой функции, т. е. фактически ищем функцию по исходному коду. Рецепт не универсален, но может сработать.

Каюсь, невнимательно прочитал условие.

Последний раз редактировалось elnoro, 30.05.2013 в 10:57. Причина: Невнимательно прочитал вчера
Ответить с цитированием
  #7 (permalink)  
Старый 30.05.2013, 17:30
Аватар для ANAGAMA
Аспирант
Отправить личное сообщение для ANAGAMA Посмотреть профиль Найти все сообщения от ANAGAMA
 
Регистрация: 29.05.2013
Сообщений: 49

Сообщение от Ruslan_xDD Посмотреть сообщение
ANAGAMA, ну если было бы просто function addElement(), то да, а тут var addElement = function()
Ухумс, у меня как то была задача где возникало желание узнать, хто ж вызывает, но обошелся иными, правильными способами.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить доступ к функциям внутри $(document).ready ? oleg_barma jQuery 3 05.06.2012 20:56
Как получить имя файла и изменить его? nedosalivan Общие вопросы Javascript 5 29.03.2010 17:51
Как получить текст внутри iframe на другом домене? Alexander Majesty Events/DOM/Window 1 23.12.2009 22:10
Как получить имя компа через JavaScript? Бурундук Общие вопросы Javascript 3 19.09.2009 16:44
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 19:00