Вообщем есть такой пример:
'use struct';
Function.prototype.bind = function(o){
var self = this,
boundArgs = arguments;
return function() {
var args = [], i;
for (i = 1; i < boundArgs.length; i++) args.push(boundArgs[i]);
for (i = 0; i < arguments.length; i++) args.push(arguments[i]);
return self.apply(o, args);
};
};
function hello(){
return console.log(this.name);
}
var a = {
name: 'Alex'
};
var x = hello.bind(a);
x()
Возвращаемая функция из внешней функции возвращает
self.apply(o, args);
Вопрос: На что ссылается
self? (ну или на что ссылается this внешней функции ).