Apenas estoy comenzando JavaScript y me pregunto si hay genios que puedan ayudarme a entender esta línea por línea.¿Puede algún genio decirme qué está pasando en este pequeño código? De Secrets of the JavaScript Ninja
1: Function.prototype.bind = function(){
2: var fn = this,
3: args = Array.prototype.slice.call(arguments),
4: object = args.shift();
5: return function(){
6: return fn.apply(object,
7: args.concat(Array.prototype.slice.call(arguments)));
8: };
9: };
Soy principiante, pero si puedes enseñarme, entonces eres increíble. Conozco los prototipos, llame, cambie, aplique un poco para poder omitir las partes para principiantes (aunque creo que no debería hacerlo, para que otros que apenas ingresan a JS puedan aprender cómo).
Aviso: Sé que hay una cierta "código similar" pidiendo una pregunta similar here pero yo estoy pidiendo línea por línea explicación y no son (no duplicados) (también se pueden saltar línea 8 & 9) :)