Показать сообщение отдельно
  #18 (permalink)  
Старый 19.03.2009, 18:20
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

п кажется я понял, что вы хотите теперь:
A=
	{
	'func':function(that)
		{
		//that указывает на объект, вызвавший функцию
		with(that)
			{
			alert(a)
			//тут переменная a является свойством a вызвавшего объекта
			}
		},
	'func2':function()
		{
		//this указывает на объект, вызвавший функцию
		with(this)
			{
			alert(b)
			//тут переменная a является свойством b вызвавшего объекта
			}
		}
	}

B_proto=
	{
	'function':function()
		{
		console.log([this,this==window.B1,this==window.B2])//this указывает на B1, вызвавший функцию
		A.func(this)
		A.func2.apply(this,[])
		}
	}
function B()
	{
	//functio
	this.a='qwerty';
	this.b='йцукен';
	}
B.prototype=B_proto;

B1=new B();
B1.function()

B2=new B();
B2.a='asdfgh'
B2.b='фывапр'
B2.function()
Ответить с цитированием