Показать сообщение отдельно
  #4 (permalink)  
Старый 09.10.2014, 19:20
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

max0n,
Либо писать в методы именованные функции. и забирать имя через arguments.callee.name,
Либо перебором.

Вариант 1:
var o = {
  
  func1: function func1() {
    alert(arguments.callee.name);
  },
  func2: function func2() {
    alert(arguments.callee.name);
  }
   
}
o.func1();
o.func2();

Вариант 2:
var o = {
  
  func1: function func1() {
    for (var name in this) {
      if (this[name] === arguments.callee) {
        alert(name);
      }
    }
  },

  func2: function func1() {
    for (var name in this) {
      if (this[name] === arguments.callee) {
        alert(name);
      }
    }
  }
   
}
o.func1();
o.func2();
Ответить с цитированием