No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

15 Días
14 Hrs
1 Min
2 Seg

Playground: Ejecuta un callback con 2s de demora

7/26

Aportes 120

Preguntas 5

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Voy a dejar el código abajo, pero si no has logrado el reto todavía, intenta terminarlo primero.\



**
*
*
*
*
*
*
*

export function runCode(callback) {
  window.setTimeout(callback, 2000)
}

esta excelente !
los veo mejores que los quizes

Es la primera vez que veo un playground en Platzi. Es chévere, aunque no me parece tan clara la nota que pusieron. Igual, se agradece mucho este espacio

Aplaudo mucho la integración de estas herramientas, pienso que le falta pulir un poco a la explicación. Gracias por hacer los cursos más dinámicos!

Justo estaba terminando el módulo ahorita y acaban de implementar estas pruebas ✨💚 me encanta 😀

Excelente iniciativa súbanle el sueldo al de la idea.

Hay que intentar se un poco mas claro en la pregunta, yo entendí que teníamos que crear un callback con un setTimeOut, no que teníamos que terminar el que mencionan en el ejemplo. Eventualmente ya me di cuenta de lo que esperaban que hiciéramos.

muy poco intuitivo este playground

El playground está genial, pero se demora mucho para ejecutar el código.

También logre hacerlo de esta manera

function runCode(name, callback) {
    return setTimeout(function () {
      console.log(callback(name));
    }, 2000);
  }
  
  function name(name) {
    return `Hola ${name}`;
  }
  
  runCode('Jesus', name);

Tengo que felicitarlos, no sé si de aquí en adelante los cursos van a venir con más de estas pruebas, espero que si, ya que me parece genial que tengamos problemas para ir resolviendo, ya que creo que aprendemos más en el campo.

😎💪🏻👏🏻👏🏻👏🏻

Hola!

Esta es otra manera de hacer el ejercicio tambien. Intente hacerlo en el playground pero no lo aceptaba. Tuve que hacerlo de la forma tradicional (aunque me gusta mas el de la imagen). Suerte a todos!

Muy chévere el PlayGround, aun así, las instrucciones no son muy claras.

Para mi que estoy empezando a ver el tema es un poco complicado de entender, estoy buscando otros videos que expliquen mejor y usando otras herramientas como chatgpt para que me ayuden en mi tarea de aprender, por lo pronto esta es la solución que me funciono según lo que he entendido.
export function execCallback(callback) {
// Tu código aquí 👈
window.setTimeout(() => {
const myFunc = () => console.log(‘Log after 2s’)
callback(myFunc);
}, 2000)
}

execCallback()

Sí, es genial la idea del Playground, más sin embargo, las instrucciones no son para nada claras , deberían de ser más específicos y no tan “técnicos” de lo que solicitan para solucionarlo…
De igual manera, no me parecían tan mal los quizzes, estaría bueno que lo combinaran para también reforzar un poco la teoría y práctica. 😃

la verdad no comprendí como hacerlo y después del primer intento me voto no me dejo hacerlo mas, así que preferí hacerlo en la terminal preciosa que tiene el Firefox
 

Intenta terminar el reto primero!, dejo mi aporte ```js export function execCallback(callback) { window.setTimeout(callback, 2000); } ```
![](https://static.platzi.com/media/user_upload/image-a1852ae2-3721-4b1d-9521-c2841dae26f2.jpg)
Esta practica me hizo enojar x\_x
Aqui mi solucion: ```js export function execCallback(callback) {  window.setTimeout(callback, 2000)} function greeting() {  console.log('hola!!')} execCallback(greeting) ```
Listo :)export function execCallback(callback) { // Tu código aquí 👈 window.setTimeout(callback, 2000); } const myFunc = () => console.log('Log after 2s') execCallback(myFunc) ```js export function execCallback(callback) { // Tu código aquí 👈 window.setTimeout(callback, 2000); } const myFunc = () => console.log('Log after 2s') execCallback(myFunc) ```
Lo hice diferente al parecer de los comentarios, esta fue mi manera: `const waittwosecs = () => {   console.log('Log after 2s');}` `export function execCallback(callback) {    return window.setTimeout(callback,2000);}` `execCallback(waittwosecs);`
Lo hice diferente al parecer de los comentarios, esta fue mi manera: const waittwosecs = () => {   console.log('Log after 2s');} export function execCallback(callback) {    return window.setTimeout(callback,2000);} execCallback(waittwosecs);
Hola, me costo entender este reto por que es algo distinto a las clases pero si entendiste los conceptos lo puedes desarrollar, repitiendo es un RETO. *Tienes la función* `execCallback` *que recibirá un* `callback` *es decir una función como parámetro, tu reto es ejecutar esa función con un tiempo de demora de 2 segundos.* Para el callback necesitamos un parametro (funcion) el cual le vamos a pasar, segun lo que nos indica la guía este es "callback". *Para hacer que la función se demore 2 segundos debes usar la función* `setTimeout`*, pero para ejecutarla debes llamarla mediante el namescpace* `window` *para poder monitorear su uso en la ejecución de pruebas, ejemplo:* ```js window.setTimeout(() => { // code }) ```2 SEGUNDOS = 2000 Ya tenemos los 2 parametros que pasaremos por el setTimeout. CALLBACK Y 2000, lo ejecutamos mediante el namescpace window. ```js export function execCallback(callback) {  window.setTimeout(callback, 2000) } ```Espero me puedan entender, saludos.
No ha claridad en lo que se requiere
export function execCallback(callback) {  // Tu código aquí 👈  return window.setTimeout(callback, 2000) }
Tengo un gran problema al no entender consignas tan simple 😭😡😡 `export function execCallback(``callback``) {  const mundo = 'mundo';  ` `callback(mundo)` `}` `export function saludar(``asd``) {  ` ``const saludo = `hola ${asd}`  console.log(saludo);`` `}` `window.setTimeout(execCallback, 2000,saludar)` ⬆️lo que hice ⬇️la solución `export function execCallback(callback) {  window.setTimeout(callback, 2000)}`
`function execCallback(``callback``) { setTimeout(``callback``, 2000);}` `function call(``call``){ return execCallback(``call``);}` `const myFunc = () => console.log('Log after 2s')` `call(myFunc);` La solución fue lo primero que pensé, pero no creí que lo pusieran tan fácil. Tuve problemas para correrlo en el PlayGround, no todos tenemos la misma lógica 😂
No me sale la opción o el botón para las pruebas
Interesante, primero lo havbia intentado así: export function execCallback(callback) { console.log(callback) } function myCallback() { window.setTimeout(2000) } console.log(execCallback(myCallback))
No me salio en el aparato del ejercicio, pero si pude hacerlo en la terminal: ![](https://static.platzi.com/media/user_upload/image-ebc96c1c-8414-4c15-9ae9-ac7e573f53d8.jpg)
Es un poco demorado el Playground, pero por fin lo logreee :) ![](https://static.platzi.com/media/user_upload/image-b1dd0458-df79-4a78-9f07-503ca607383a.jpg)
Spoiler . . . . . . . . . . . . . . . . . . . . ... . . . . . . . . . ... . . . . . . . . . ... . . . . . . . . . ... . . . . . . . . . ... . . . . . . . . . ... . . . . . . . . . ```js export function execCallback(callback) { window.setTimeout(callback, 2000) } ``` ..
Esta crash el ejercicio :(

reto

export function execCallback(callback) {
  // Tu código aquí 👈
  return window.setTimeout(callback, 2000)
}

Yo lo hice así:

Hice otro codigo para retarme usando los primeros ejemplos, no se si esta bien aunque no da errorers no se si es lo que se esta pidiendo ```js export function execCallback(num1,num2) { // Tu código aquí 👈 return num1 + num2; } function suma(num1, num2, ff) { window.setTimeout(function () { const result = ff(num1, num2); console.log(result); }, 2000); } suma(2, 2, execCallback); ```
este es mi aporte: export function export function execCallback(name, callback) {  // Tu código aquí 👈  return setTimeout(() => {    console.log(callback(name));  }, 2000);}; function saludar(name) {  return `Hola ${name}`;}execCallback('zerialfan', saludar); ```js export function execCallback(name, callback) { // Tu código aquí 👈 return setTimeout(() => { console.log(callback(name)); }, 2000); }; function saludar(name) { return `Hola ${name}`; } execCallback('zerialfan', saludar); ```
```js export function execCallback(callback) { window.setTimeout(callback, 2000); } ```

Solución:

export function execCallback(callback) {
  window.setTimeout(() => {
    return callback();
  },2000) 
}

Aplaudo este tipo de propuestas de platzi que nos permiten poner a prueba lo que estamos aprendiendo, de verdad son excelentemente útiles. Al igual que otros compañeros también comparto la idea de que quizás se debe mejorar la forma en la que se expresa la idea de lo que debemos hacer(por lo menos en este ejercicio), porque se hizo un poco confuso entenderlo desde el inicio, pero fuera de eso de verdad esto está genial.

MI SOLUCIÓN
*
*
*
*
*

Re bugueado el playground

Solución:

Según la guía, ya tenemos una función definida previamente y esta se ve así:

// Se crea la función 
const myFunc = () => console.log('Log after 2s');
// Se la pasamos como argumento a la función con el callback
execCallback(myFunc);

Solución:

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Si copiamos esto en la consola del navegador recuerda seguir este orden, de lo contrario tendremos un error:

const myFunc = () => console.log('Log after 2s');

function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

execCallback(myFunc);

// Output:
// Log after 2s

Mi solucion.
Primero me confundi un poco ya que por alguna razon no entendia bien la guia

export function execCallback(callback) {
  // Tu código aquí 👈
  window.setTimeout(callback,2000)
}

Lo logré, mi forma de hacerlo fue así:

export function execCallback(name, placa) {
// Tu código aquí 👈
console.log(Tu conductor asignado, ${name}, con placas ${placa} llegará en 3 minutos);
}

setTimeout(execCallback, 2000, ‘Alexander’, ‘MTN-06D’);

Este es mi código, realmente me costo mucho hacerlo, mas de lo que pensaba y no se si esta bien, si alguien me lo corrobora genial, muchas gracias! 😄

< export function execCallback(callback) {
  console.log('Como estas ' + nombre() + ' ?');
  callback();
};

function nombre() {
  let name = 'Bruno';
  return name;
};

window.setTimeout(() => {
  execCallback(nombre);
}, 2000); >

Solo hay que terminar la funcion que ya esta implementada.

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}
console.log('log after 2s');
export function execCallback(callback) {
  // Tu código aquí 👈
  window.setTimeout(callback, 2000)
}


export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Esta es mi solución, pero no me lo corrió el playground.
Dejo espacios para no spoilear con mi respuesta
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

const myFunc = () => console.log('Log after 2s')
export function execCallback(callback) {
  window.setTimeout(callback, 2000)
}

execCallback(myFunc)

Aquí tienes una posible solución para la función execCallback utilizando setTimeout para demorar la ejecución del callback por 2 segundos:

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Dentro de la función execCallback, llamamos a setTimeout pasando el callback como primer argumento y 2000 (que representa 2 segundos en milisegundos) como segundo argumento. Esto hará que el callback se ejecute después de un retraso de 2 segundos.
.
Recuerda que en este ejemplo se está utilizando window.setTimeout para poder monitorear el uso de la función en la ejecución de pruebas, como se menciona en el enunciado.

Yo lo hice asi

export function execCallback(callback) {
  window.setTimeout(() => {
    callback(console.log('Log after 2s'))
  },2000)
}

Últimamente esta como malo el Playground este, se demora un siglo en hacer un test y a veces ni lo hace. Fue bonito mientras duro, ahora a saltarselo

Hola hay un problema con los playground, están tardando demasiado en responder, soy el único?

Mi codigo 😄, lean bien, necesitan llamar a window

export function execCallback(callback) {
  // Tu código aquí 👈
  return window.setTimeout( callback , 2000)
}

Buenas,

Comparto la solucion que le encontre al ejercicio!
La verdad estan muy buenos estos ejercicios con consola.

function time(){
    return setTimeout(()=>{console.log ("Log after 2s")},2000);
  };
  

function execCallback(callback) {
   return callback();
  };

 
execCallback(time);

ALTO AHÍ!!!

SI SE PODRÁ LA PRÓXIMA VEZ

function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Me gustan mucho estos retos para poner en práctica los conceptos inmediatamente. Aquí les dejo mi solución 💚


Acá pueden probar el código:

// Solución al ejercicio de "PlayGrounds"
export function execCallback(callback) {
    window.setTimeout(
      callback, 2000);                          
    }

Dejo aqui mi solucion
*
*
*
*
*
*
*
*
*

export function execCallback(callback) {
  window.setTimeout(callback, 2000)
}











`

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

function greetings() {
  console.log('Hola platzi');
}

execCallback(greetings);

Si le das 1000 veces al correr pruebas puedes llenar la pantalla de confetis .
0_0 0_0 0_0 0_0 0_0

Mi humilde código aunque no es válido para playground funciona en la consola

function execCallback(callback) {
    console.log(callback)
}

setTimeout(() => {
    execCallback("Execute myFunc 2s after")
}, 2000)

Mi solución:

export function execCallback(callback) {
  return window.setTimeout(callback, 2000)
}
export function execCallback(callback) {
  // Tu código aquí
  window.setTimeout(() => {
    callback();
  }, 2000)
}

function test() {
  console.log('Hola :D')
}

execCallback(test)

Me sumo a los comentarios que hay que mejorar la explicación de lo que piden, para llegar a comprender claramente lo que se requiere.

7/26 Playground: Ejecuta un callback con 2s de demora
🐸
🐸
🐸
🐸
🐸
🐸
🐸
🐸
🐸
🐸
🐸

export function execCallback(callback) {
  // Tu código aquí 👈
  window.setTimeout(callback, 2000)
};

Escudo anti spoilers ⬇️⬇️⬇️ scroll Dow answer.
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️
🛡️

export function execCallback(callback) {
  window.setTimeout(
   callback, 2000)
}
// funciones pruebas
function myFunc() {
  console.log("log after 2 seg")
}
function grettin() {
   console.log("Hello,Word")
 }
// se puede ejecutar con cualquier funcion que le pases
// primera ejecucion
execCallback(myFunc)
//segubda ejecucion y asi sucesiamente puedes usar cualquier funcion  que le pases para quese ejecute 2 seg despues.
execCallback(grettin)

Se debe ejecuar un setTimeout con la funcion callback que es la que nos estan dando como parametro, se define el tiempo en 2000ms
.

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Acá dejo mi solución:

<export function execCallback(callback) {
  // Tu código aquí 👈
  window.setTimeout(() => {
    // code
  }, 2000)
  callback(myFunc);
}

const myFunc = () => console.log('Log after 2s')
execCallback(myFunc);> 

Le di tantas vueltas para que terminara siendo sencillo jajaja.

export function execCallback(callback) {
  return window.setTimeout(callback, 2000);
}
export function execCallback(callback) {
  // Tu código aquí 👈
  
  return  window.setTimeout(callback, 2000)
  
}

Este playground estuvo bien chevere

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Jeje Lo logré, aunque si estaba un poco rara la explicación.

export function execCallback(callback) {
  // Tu código aquí 👈
  window.setTimeout((callback), 2000);
}
const saludar = () => console.log('Hola Mundo');
execCallback(saludar);

Haber yo lo resolvi de esta manera supongo que habra mejores maneras de hacerlo pero aqui mi aporte…

Lo oculto un poco para que no se expoileen jeje
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

export function execCallback(callback) {
  // Tu código aquí 👈
  return window.setTimeout(callback, 2000);
}

function hola() {
  console.log('Hola');
}

execCallback(hola);

El playground no funciona, pero lo hice en VSC.

export function execCallback(callback) {
//la funcion arrow de ejemplo te hace pisar la rama, pero esta bien asi:
window.setTimeout(callback, 2000);
//los 2000 representa milisegundos 2000= 2 seg
}

//(El botón verde del margen derecho de abajo no funciona)

Está muy bueno y ya tuve la oportunidad de hacer los retos de los playground anteriores de otros cursos.

🚩⚠️ Solo me parece que la explicación de lo que teníamos que hacer en este fue muy confuso. De mi parte tuve que ver los aportes de la comunidad. Y en este modulo hay pocos.

La solución era sencilla, pero me lo compliqué bobamente, así que… que mejor que un callback? Un callback dentro de otro callback

export function execCallback(callback) {
  function hi(p1) {
    return p1
  }

  window.setTimeout(
    function () {
      console.log(callback(hi("hi")))
    }
    , 2000)
}

Un poco confuso en las instrucciones, pero se logró 😄

export function execCallback(callback) {
  window.setTimeout(callback, 2000);
}

Me la estaba complicando al principio con la función arrow del ejemplo, pero terminó siendo muy fácil

window.setTimeout(callback, 2000);
export function execCallback(callback) {
  window.setTimeout(() => {
    callback();
  }, 2000);
}

No me funciona :’(

Acá dejo mi humilde aporte grupo, saludos!

function execCallback(callback) {
  window.setTimeout (callback, 2000)
}

const myFunc = () => {
  console.log('Log after 2s');
}

execCallback(myFunc);

💚

El ejercicio no se entiende del todo y es muy lento para mostra el resultado. Sin embargo, la idea es buena.

export function execCallback(callback) {
  window.setTimeout(() => {
    callback();
  }, 2000);
}

Opino lo que la Mayoria…El ejercicio no esta bien planteado !!

La guía del ejercicio no es del todo clara a simple vista, pero lo que es importante tener en cuenta es que el callback que envían en las pruebas es la función completa, no solo el nombre de una función.

No es clara la nota que se muestra, lo intente hacer tal cual como oscar barajas lo hizo en el video anterior… pero no funciono … mi pregunta es la respuesta era única?

Me agrada la idea del playground, ayuda a practicar los conceptos… Lo he visto en algun lado estoy seguro, pero bien por Platzi.

Aqui les dejo otra implementacion, antes de ver la solucion intenta resolverlo:
*
*
*
*
*
*
*
*
*
*

<// Tu código aquí 👈
  window.setTimeout(() => {
    callback();
  },2000)> 

esto es muy interactivo, muchas gracias por siempre pensar en el dinamismo de las pruebas.

Ya de varios playgrounds que he hecho, veo que la redacción de la guía tiende a confundir lo que pide el ejercicio. A veces menos es más pero si está bien escrito.
Por algo es que la documentación no la escriben programadores.

me encantan estos ejercicios, pero en este caso la pregunta no es clara en su planteamiento, creo que seria bueno si revisaran un poco la manera de plantear los ejercicios

siento que le falta algún tipo de feedback al botón de correr pruebas, por momento s le doy click y por la sensación de que no hace nada le doy de vuelta y pierdo mas de un intento sin querer

export function execCallback(callback) {
  window.setTimeout(() => {
    callback()
  }, 2000)
}

const myFunc = () => console.log('Log after 2s')
execCallback(myFunc);

Genial el playgraound! genera mucho más valor a la realización de los cursos!
Un apunte, se podría mejorar las notas con referencia a la explicación así como trabajar para evitar usas window

Esta implementación de playground es genial!!! me encanta 😍. Ojalá se implente en todos los cursos practicos

undefined