Показать сообщение отдельно
  #1 (permalink)  
Старый 08.01.2016, 16:17
Интересующийся
Отправить личное сообщение для uanr81 Посмотреть профиль Найти все сообщения от uanr81
 
Регистрация: 14.12.2015
Сообщений: 18

Встроенный метод bind
Здравствуйте. У меня возникли сложности при эмуляции встроенного метода bind. Если переписать так как в учебнике
bind(func, context /*, afgum*/)

Здесь сложностей не возникает, можно сослаться в функции обвёртке на идентификатор из замыкания
func.apply(context, sbor_arg);

у нас в аргументах есть ссылка на объект функции "func". Я думал не сложно для меня будет как бы написать встроенный метод, с его именно вызовом func.bind(context). Писал так:
function bbind(cont/*, afgum*/){
	_this = this;
	karing = [].slice.call(arguments, 1);
	function a(){
		arg_obvertki = [].slice.call(arguments);
		sbor = karing.concat(arg_obvertki);
		return func.apply(cont, sbor);/*Как здесь можно сослаться на функцию в контексте которой вызван метод, в данном коде как то переписать func*/
	}
	return a;
}
Спасибо. Буду рад разъяснению.

Последний раз редактировалось uanr81, 08.01.2016 в 16:44. Причина: Забыл контекст вызова передать
Ответить с цитированием