Тема: Баг? a-a-a!!!
Показать сообщение отдельно
  #2 (permalink)  
Старый 20.02.2015, 23:00
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,585

Да. Именно так работает js. Откуда функцию вызовешь - такой this и будет, что весьма удобно.
function func(){ alert(this) }

var obj1 = {
    toString: function(){return '[object Obj1]'},
    func : func
}
var obj2 = {
    toString: function(){return '[object Obj2]'},
    func: func,
    obj1: obj1
}

func() //Window ибо равносильно window.func()
obj1.func() //Obj1
obj2.func() //Obj2
obj2.obj1.func() //Obj1
__________________
29375, 35

Последний раз редактировалось Aetae, 20.02.2015 в 23:06.
Ответить с цитированием