|Implementa bind() manualmente desde ceroDifícil
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 15:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Implementa bind() manualmente desde cero

Difícil30 pts
ruleRestricciones
  • radio_button_unchecked
    Usa .apply() o .call() en myBind
  • radio_button_unchecked
    No uses .bind()

Enunciado

Implementa la función myBind que replica el comportamiento de Function.prototype.bind sin usar .bind().

Instrucciones:

  1. myBind(fn, thisArg, ...args) debe retornar una nueva función que, al invocarse, ejecute fn con this fijado a thisArg y los argumentos args prepend a los que reciba al llamarse.
  2. Implementa usando .call() o .apply() — no uses .bind().
function greet(greeting: string) {
  return `${greeting}, soy ${(this as any).name}`;
}

const obj = { name: "Ana" };
const boundGreet = myBind(greet, obj, "Hola");
boundGreet();
// "Hola, soy Ana"

La función exportada testMyBind ya usa myBind internamente — solo debes implementar myBind.

testMyBind("Ana", "Hola");
// "Hola, soy Ana"
Restriccionesexpand_more
  • Dificultad: Difícil
  • Completa todos los test cases para obtener los 30 puntos.
  • No modificar la línea export al final del archivo.
  • Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.

Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.

Inicia sesión para reaccionar
Inicia sesión para reaccionar
Implementa bind() manualmente desde cero — Difícil | Coding Challenges · Coding Challenges