Показать сообщение отдельно
  #7 (permalink)  
Старый 14.02.2012, 23:18
Аспирант
Отправить личное сообщение для jsuse Посмотреть профиль Найти все сообщения от jsuse
 
Регистрация: 10.04.2010
Сообщений: 92

Сообщение от Mахmахmахimus Посмотреть сообщение
у обьектов нет названий, ты имел ввиду возвращать название идентефикатора по которому был получен обьект?

Сори, непонятно написал. Имел ввиду имя переменной объекта, созданного из функции-конструктора. То есть примерно так:

function Animal(name) {
    this.name = name;
    obj_name(this);          // и вот эта функция бы выводила просто "dog", то есть имя объекта, на которой указывает this
};
var dog = new Animal("Шарик");


В функции-конструкторе есть this. Как понять, на какой объект он указывает? Здесь, в этом примере, допустим явно видно, что this - это dog. А если вложенных функций окажется много, и в каждой будет еще по несколько с замыканиями и своими this. Вот чтобы облегчить это отслеживание, на какой объект указывает какой-то конкретный this, хотелось бы такую функцию, как в примере. Ставишь ее в какой-то функции, где есть this, но сразу не ясно, что это за this, а она тебе через alert тут же выводит имя объекта этого this
obj_name(this);     // выводит имя объекта, т.е. dog в примере
Ответить с цитированием