Me estoy enamorando mas de js con este curso y me atrevo a decir que no seria a si si no fuera por ti jhon. Eres el mejor maestro. Gracias por ayudar a la comunidad de esta manera Bendiciones..
Un callback explicado como analogía sería: Supongamos que nos encontramos hablando por teléfono. Al estar hablando nos surge una situación por resolver de manera inmediata. Ponemos la llamada en espera, realizamos lo que tenemos que hacer y cuando terminamos, volvemos a la llamada que dejamos en espera. Un callback es una función que será ejecutada cuando una operación asíncrona se haya completado. En el caso de la analogía, seria esa situación urgente, y cuando este hecho, ejecutará el callback.
No logro entender siguiendo linea por linea como es el orden que se ejecuta el código por las funciones anidadas, pero se entiende el conceptooo, muchas gracias jonathan. Este lenguaje es muy completo.
me gusta como esta ordenado el curso jonmircha. muchas gracias por tomarte el tiempo en crear todos estos tutoriales. los estoy siguiendo video x video :)
Hola Mircha, me ha costado entender en la práctica estos concepto. Espero más adelante los volvamos a retomar a ver si lo puedo ver más claro. Muchas gracias por tu aporte :)
Gracias por ofrecer tu valioso tiempo para enseñarnos a programar Jon! En serio, muchas gracias! Estoy siguiendo detenidamente el curso desde 0, repitiendo los videos cuándo no entiendo algún concepto, pero llevas tan bien la docencia que se entiendo casi todo a la primera!
Jon, buenas noches. Me fué dispendioso poder entender lo de las Callbacks , sobre todo cuando se presenta el Callback Hell, pero afortunadamente por fin me quedó claro y sigo adelante con TU CURSO que es el MEJOR DE TODOS. Gracias Jon. Eres un filántropo. Saludo cordial
Para que lo entiendan mejor reemplacé el value*value por una funcion anonima que hace lo mismo(les dejo mis comentarios, solo copien y peguen en vs code para que se vea bien): function cuadradoCallback(value,callback){ //recursivadad: una funcion se invoca a si misma dentro de si - eso es lo que me generara el callback //simulara la asincronia - ese ir y consultar una api externa setTimeout(() => { //esto simulara el manejo de ajax o al consumo de datos a traves de un API o de archivos externos callback(value, ()=>{return value*value;}); //callback("valor ingresado","la funcion a ejecutar") }, 0 | Math.random()*1000); //en ese callback es donde se le dice qué tendrá( o sea que parametros) la funcion callback puesta antes como parametro (al inicio) } cuadradoCallback(3,(value,resultado)=>{ console.log("Inicia Callback"); console.log(`Callback ${value}, ${resultado()}`) //se llama a la funcion anonima que contiene value*value almacenada ahora con el nombre de resultado(); });
para no ir cambiandole el número al copiar y pegar y poner 1,2,3,4,5 me cree una variable contador y al final de cada función le mando el contador++ y con eso te evitas el estar modificando los números.
Gracias.. tus anotaciones me sacaron de apuros... no se si fue cosa de percepción pero quede totalmente perdido con el valor que le pasa en callback y resultado.
No sé quienes le dan dislike a tus videos pero los encontraré y los obligaré a quitarlos okno jajaj Es el mejor curso de JS que he encontrado en youtube, udemy y coursera, y es totalmente gratis!
Al principio no le entendí muy bien respecto a la callback, cuando se invoca la funcion y se manda como parametro una arrow function, cuando lo analicé y entendí dije orale!!, que padre no sabía que se podía hacer eso! Además de los buenos memes había visto algunos, pero poco los entendía ahora todo tiene sentido GRACIAS por hacer siempre las clases interesantes
Recién estoy entrando al concepto de los callback y las promesas, me está resultando algo complicado entender toda la lógica, pero poco a poco lo voy entendiendo, gran video
Estoy estudiando en Platzi y acompaño algunos temas con tus videos, explicas genial. Aunque este tema es un poco complejo. Saludos desde Argentina jon, gracias por tu contenido de verdad.
Gracias JON entendí toda la lógica del porque los callback, como resolver el hecho de que el programa no se frene y al mismo tiempo la importancia de resolver tareas en forma ordenada sin poder saber a ciencia cierta que tiempo demorara cada una en completarse, que seria como generar hilos a mi forma de ver. Lo que aun no me queda claro y espero poder ver la luz al final del túnel mas adelante es como modularizar todas estos pequeños pasos en codigo mas simple, mantenible y que de tener un error se lo puede identificar fácilmente sin caer en el descontrol este de la pirámide. Gracias por tu tiempo.
Me gustó el tema, aunque los Callbacks lo entiendo como un mecanismo de "respaldo" es decir, en momentos que ejecute una función asíncrona, habrá un respaldo en caso tal. Tal vez la función que usaste con el SetTimeout no lo he prácticafo lo suficiente pero el concepto me queda claro que es lo importante, thanks Jon.
Esto si es una forma de disfrutar del confinamiento en mi país. Eso sí, hago tantos checks con "console.log" para ver donde y como se mueve el código que me voy a acabar tatuando el "maldito" console.log.
Al principio me costo asimilar y entender la Asincronia en JS, todo eso del event loop me confundía. Ahora que estaba viendo esta clase entiendo que las callbacks son las "tareas" (llamemolo asi) que se van apilando para ser ejecutados segun el tiempo que le hemos dado en el "setTimeout". Hasta que no se ejecute una, no podra continuar con la siguiente (eso entiendo yo). Es por eso que se van anidando las funciones una tras otra, ya que si no se hace de esta manera "x" tarea que se tenia que ejecutar de ultimo va terminar ejecutandose de primero y NO se estaria aplicando el asincronismo. ... ESO ENTIENDO YO. :p
Con este video me pasó lo mismo, como cuando vimos los prototipos y luego el azucar sintactico, espero que las promesas me saquen de estas dudas que tengo JAJJAJAJAJ
Hola estaba leyendo del libro "Eloquent Javascript", la sección donde habla sobre las funciones de orden superior y callbacks y me quedó una duda: ¿Se pueden pasar parámetros a una función que ya está siendo parámetro de otra función? El libro pone este ejemplo: function repeat(n, action) { for (let i = 0; i < n; i++) { action(i); } } repeat(3, console.log); Pero console.log imprime lo que se declara dentro de repeat o sea el valor de i. Existe una forma de pasarle parámetros en la función action para que imprima otra cosa? Por ejemplo algo así: repeat(3, console.log("¿Hola Jon como andas?")); // este código no funciona Mi intención es reutilizar esta función repeat para hacer todo tipo de tareas por ejemplo: repeat(10, dibujarCuadrados(width, height, color)); repeat(5, enviarNotificacion(mensaje)); Saludos genial curso. Ojalá puedas darme la respuesta ya me dí la cabeza contra la pared unas cuantas veces con este tema, la verdad no lo entiendo jajaj.
entiendo casi todo, pero si es algo confuso que todos los llamados a la funcion principal este dentro del primer callback , entonces al volverla a llamar se ejecuta su interior que a su vez tiene una operacion asincrona con el nuevo callback ,pero la funcion no ejecuta ese nuevo callback asincrono hasta que el anterior termine su operacion (creo xd)
Hola jon , de nuevo te comento , primero pues que buen video!! , solo tengo una duda , porque invocas de nuevo la funcion dentro del cuerpo del callback?? , osea cuando invocas la funcion que tenia por parametro del callback , seria asi "miFuncion(value , ()=>{})" y ahi ya lo invocas , pero luego dentro del 2 argumento (el cuerpo del callback) , vuelves a invocar esa funcio , formando el dichoso callbackhell , pero mi duda es porque lo invocas dentro del 2 parametro , y no afuera ??? espero me puedas resolver , gracias :)
Como siempre, excelente contenido.. No te falta sino buscar plastilina para explicarlo jajajajaja, mil gracias Jon como siempre, bendiciones y nunca cambies!!! 🧙♂️🧙♂️🧙♂️
Buenas profe una consulta, en el setInterval porqué tomá el valor random en la disyunción y nunca el numero de la izquierda, he probado poniendo otros numeros y siempre toma el aleatorio. gracias
@@jonmircha ahora viendolo de nuevo, porque | ? el or no se hacia acaso con dos, es decir | | ? entiendo que el cortocircuito toma como false el 0 y por eso iria siempre por el valor de la derecha como en tu ejemplo. pero yo le pongo otros valores como el 2, 5 etc y nunca me los toma
Gracias por este video! Es de los pocos que vi que me ayudó a entender mejor las callbacks. Pero tengo una pregunta tonta: en el minuto 6, por qué le pasas "value * value" como parámetro a la función? No debería estar entre llaves, con el código que se ejecuta?
Después de ver el video por un lado solo entiendo que la palabra callback equivale a función recursiva y por otro lado asincronia se refiere a poder ejecutar procesos de manera paralela, no se que tiene que ver una cosa con la otra
no, callback no es lo mismo que recursividad....Recursividad es un metodo en el que una función se llama a si misma DENTRO DE SU PROPIO CUERPO. Callback es una función que SE PASA COMO ARGUMENTO a otra funcion y se llama en algun momento posterior dentro de la funcion principal.
Hola profesor, su curso está super genial,pero tengo una duda,en la parte del callback donde puso (value, value*value) eso solo se puede poner en una callback por qué lo intentó poner como parámetro en una función normal y me da un error,le agradezco cualquier ayuda
Claro por que la callback se ejecuta en un segundo plano de la primer función en la que se invoca 😉 cuando llegues a los ejercicios del DOM y AJAX entenderás más de las callbacks
Este es el primer codigo que me cuesta entender , después de practicarlo lo comprendí de la siguiente manera, haciendo un ejemplo basado en el del video function nameCB(name,callback){ setTimeout(()=>{ callback(`Hola ${name}`); }, 2000); } nameCB("Eloy",(result)=>{ console.log(result) }) La funcion nameCB recibe un valor de tipo String y una funcion , dentro suponemos con el setTimeout que es el tiempo que tomara la peticion , por lo tanto podemos i]gnorarlo y centrarnos en que dentro de la funcion nameCB , se hace un llamado a la funcion que se le sera enviada como argumento , dicha funcion lo que hara es simplemente agregar ela palabra Hola , al valor enviado como argumento a la funcion. Al llamar a la funcion nameCB, esta requiere 2 parametros , 1 es el valor que queremos concatenar y el segundo es la funcion callback PERO (aqui es donde no entendia bien) se le asigna una variable en los parametros , que sera a fin de cuentas la variable que almacenara el resultado que devuelva la callback , por lo que la funcion argumento solo tiene que imprimir dicha variable Mi confusion fue que estaba viendo ese result como un argumento de entrada , siendo que esos parametros son para cachar o recibir los valores que retorne la funcion callback. Si esoty errado en algo por favor corríjanme , por lo pronto , bajo esa logica entiendo el funcionamiento de las callbacks (8 PD: excelente videoo
Entiendo que lo que conseguimos con callback es que por ejemplo se cargen las imagenes que son interactuables de la pagina,sin que el usuario pueda acceder a ellas, y paralelamente callback premite que se vaya cargando el resto del codigo, es asi?,gracias :)
Hola, soy nuevo en esto y no entiendo muy bien como hace js para saber cuales serán los valores que tomara para "result" se que los valores que toma son los del callback, pero no se como ni porque, cualquier ayuda lo agradecería.
Cuando se termine el curso de JS más o menos que nivel dependiendo claro está de la agilidad mental o lógica de la persona, que nivel tendría en cuanto a JS respecta especificamente teniendo en cuenta que sería una respuesta con sentido figurado incluyendo al sindrome del impostor por igual jajaja, es una duda fuerte para muchas personas que empiezan en esto del desarrollo pero me gustaría saber que tanto se podrá adquirir dejando fuera las investigaciones autodidactas de contenido, espero tu respuesta profe! Mi pregunta no más es por curiosidad esas dudas que surgen de momento sabe XD
Una observacion, no se si es valida o no, es que me he fijado que el mecanismo de las callbacks es contrario a las de las funciones normales. Las funciones normales se declaran y luego son llamadas, por otro lado, las callbacks son algo parecido llamadas dentro de la funcion y luego son declaradas dentro de la funcion. Saludos desde la Republica Dominicna.
Recuerda que en JS las funciones son elementos de orden superior, lo que significa que prácticamente puedes hacer cualquier cosa con ellas, definirlas, pasarlas como parámetros (como el caso de las callbacks), retornarlas, asígnarlas en variables, etc
Hola , te hago una consulta? Como hago para llamar dentro de un array de objetos a uma propiedad de ese objeto? Por ejemplo tengo un objeto llamado perro h dentro de ese objeto tengo un array y dentro del array una propiedad llamada nombre, se que si hago, un console.log del objeto, me retorna todo el objeto pero cuando le hago el console.log de por ejemplo:perro.nombre me salta error, sera porque esta dentro del arraya? Si es asi como hago para llamar a esa propiedad?
no estaria entendiendo de donde saca un resultado la variable resultado :( o porque se almacena en el? (los parametros que se pasan al callback dentro de el setTimeout, pasarian a heredarse a la funcion que llamamos?, ya que no entiendo porque se puede hacer multiplicaciones dentro de esos parametros del call back :(
@@jonmircha si me di cuenta tiempo despues jaja :( estuve bastante tiempo confundido con eso y al final solo es la invocacion de la funcion dentro de si misma jaja gracias Jon¡¡¡¡¡¡
¿que pluggin usas o como le haces para que todo lo que te sale dentro de las comillas francesas (``) sea de diferentes color? en mi VSC son de un mismo color :c
@Estela Marchesani pero al momento de declarar una función flecha anónima esta debe ser asignada a una variable y eso no sucede en el video el profesor lo explica en este video ruclips.net/video/WuCw9agV3Rc/видео.html y tambien el video de funciones
Saludos Prof, 1. Pero entonces las Callback son bloqueantes, no? 2. Dónde consigo esos iconos tan cheveres que adjunto en la cúspide de la pirámide Callback hell??? 😻
Algo importante sobre los callbacks, corríjanme, por favor, si estoy equivocado: Al ver nuestras funciones decuadradoCallback estuve confundido al principio, pero ahora creo que lo visualizo mejor. La callback no es la función cuadradoCallback, sino la función flecha que dentro de su scope ejecuta nuevamente a la función cuadradoCallback(1), no obstante, esta ejecución de cuadradoCallback(1) no es la función callback de cuadradoCallback(0). La función callback para cuadradoCallback(0) es la arrow function que comienza (value, result) => {}. Dentro de su contexto, esta callback function ejecuta nuevamente cuadradoCallback, pero con un nuevo valor para el parámetro value, lo que abre una nueva callback como arrow function que dentro de su scope ejecuta a cuadradoCallback(2) y así hasta la ejecución de la última callback que recibe a 5 como value y no vuelve a ejecutar cuadradoCallback en su scope.
Quizas esta forma me lia muchisimo y no lo acabo de entender del todo. Es mas fácil de esta forma o tengo algo mal? function callback_primera (cb_exponente) { setTimeout(() => { cb_exponente(0) cb_exponente(1) cb_exponente(2) cb_exponente(3) cb_exponente(4) }, Math.random() * 2000) } function cb_exponente (num1) { console.log(num1 ** num1) } callback_primera(cb_exponente)
Aún no logro comprender del todo la aplicación de un callback en una operación asíncrona como puede ser la llamada a una base de datos. Algo que no entiendo es, por ejemplo, si se quiere hacer la petición a una base de datos y puede llegar a tardar un poco en cargar todos los datos, como es posible que se le diga al programa explícitamente que debe esperar a que todos los datos sean obtenidos y no siga ejecutando las siguientes lineas si js es asíncrono y no bloqueante, algo así como cuando carga una página de ventas de distintos productos, ¿o eso se resuelve solo mediante promesas?. Ayuda por favor, esto es algo que no me deja dormir jaja. Agradecería demasiado un ejemplo con un código sencillo ;).
haber si entendi. El temporizador finge ser una llamada a alguna base de datos y hasta no tenerla, no se ejecuta. si pongo un console.log("algo") despues de todo el callback hell este console se ejecutaria primero puesto que esta en el hilo y el callback hell de mientras pasa por la pila de llamadas... ahhh he estado como 3 horas tratando de entender todo esto de asincronia y callback.
creo que para algunos temas haria falta tipo presentacion o explicacion en powerPoint, o ejemplos graficos... solo una sugerencia... me constaba entender estos temas y fijate que en Appdelante, parte 1, usan unos graficos ...tal vez te sume incorporarlos... son muy buenas tus clases y agradezco que sean tan completas
Me estoy enamorando mas de js con este curso y me atrevo a decir que no seria a si si no fuera por ti jhon. Eres el mejor maestro. Gracias por ayudar a la comunidad de esta manera Bendiciones..
Gracias por tus bendiciones :) comparte para llegar a más personas
Yo ya no sé si estoy más enamorado de JS o del profe, jaja... El mejor curso sin duda!!
Un callback explicado como analogía sería:
Supongamos que nos encontramos hablando por teléfono. Al estar hablando nos surge una situación por resolver de manera inmediata. Ponemos la llamada en espera, realizamos lo que tenemos que hacer y cuando terminamos, volvemos a la llamada que dejamos en espera.
Un callback es una función que será ejecutada cuando una operación asíncrona se haya completado. En el caso de la analogía, seria esa situación urgente, y cuando este hecho, ejecutará el callback.
😉
Tecnicamente se llama princios de la programacion funcional, y javascript la usa en esta ocacion por el tema de asincronita que posee este lenguaje :)
jaja con el ejemplo lo entendi, Gracias Manuel
@@naxxiiimarquez9461 En vez de desenredar, tiraste a enredar el concepto...
@@JardanySvidrigailov en realidad no enredó, claro, si sabes mínimamente que es la programación funcional y la asincronía.
No logro entender siguiendo linea por linea como es el orden que se ejecuta el código por las funciones anidadas, pero se entiende el conceptooo, muchas gracias jonathan. Este lenguaje es muy completo.
Pedazo de clase. Excelente curso en pleno 2022.
😉🙌🏻
Gracias, se me complico pero al final comprendí. A seguir practicando!
😉👋🏻
No he visto curso mas completo de JavaScript que este, felicitaciones Profe Jon y gracias por tan muy buen material
😉🙌
Muchas gracias amigo alfin pude comprender la funcionalidad de los callbacks y el event loop
Excelente!👋🏻😉
me gusta como esta ordenado el curso jonmircha. muchas gracias por tomarte el tiempo en crear todos estos tutoriales. los estoy siguiendo video x video :)
😉👋🏻
Gracias por esta clase Jon!!! muchas bendiciones!!!
😉🙌🏻
Si por fin he roto esa duda de programacion sincrona y asincrona.... y valla que concurrente es estas clases. Exelente profesor john.
😉👋🏻
Hola Mircha, me ha costado entender en la práctica estos concepto. Espero más adelante los volvamos a retomar a ver si lo puedo ver más claro. Muchas gracias por tu aporte :)
👋🏻😉
La verdad es que lo explicas muy bien, muchisimas gracias Jonathan.
Gracias, saludos
sept 11 1969**sept 29 2023
gracias excelente curso
felicidades John Mircha
👋🏻😉
Muy bueno Jon, tuve que verlo un par de veces para poder entenderlo bien. Un abrazo grande!
:)
Excelente curso, el mejor de todos, muy buena explicación de los temas y muy bien ordenados, muchos exitos para usted profe !!
Muchas gracias :) comparte para llegar a más personas
Gracias por ofrecer tu valioso tiempo para enseñarnos a programar Jon! En serio, muchas gracias! Estoy siguiendo detenidamente el curso desde 0, repitiendo los videos cuándo no entiendo algún concepto, pero llevas tan bien la docencia que se entiendo casi todo a la primera!
😉👍
Jon, buenas noches. Me fué dispendioso poder entender lo de las Callbacks , sobre todo cuando se presenta el Callback Hell, pero afortunadamente
por fin me quedó claro y sigo adelante con TU CURSO que es el MEJOR DE TODOS. Gracias Jon. Eres un filántropo. Saludo cordial
🙌🏻🥰
En esta clase si me detuve, lo tuve que ver tres veces para entenderlo, gracias profe por este curso
Con mucho gusto
Para que lo entiendan mejor reemplacé el value*value por una funcion anonima que hace lo mismo(les dejo mis comentarios, solo copien y peguen en vs code para que se vea bien):
function cuadradoCallback(value,callback){
//recursivadad: una funcion se invoca a si misma dentro de si - eso es lo que me generara el callback
//simulara la asincronia - ese ir y consultar una api externa
setTimeout(() => { //esto simulara el manejo de ajax o al consumo de datos a traves de un API o de archivos externos
callback(value, ()=>{return value*value;}); //callback("valor ingresado","la funcion a ejecutar")
}, 0 | Math.random()*1000); //en ese callback es donde se le dice qué tendrá( o sea que parametros) la funcion callback puesta antes como parametro (al inicio)
}
cuadradoCallback(3,(value,resultado)=>{
console.log("Inicia Callback");
console.log(`Callback ${value}, ${resultado()}`) //se llama a la funcion anonima que contiene value*value almacenada ahora con el nombre de resultado();
});
para no ir cambiandole el número al copiar y pegar y poner 1,2,3,4,5 me cree una variable contador y al final de cada función le mando el contador++ y con eso te evitas el estar modificando los números.
Gracias.. tus anotaciones me sacaron de apuros... no se si fue cosa de percepción pero quede totalmente perdido con el valor que le pasa en callback y resultado.
Muchas gracias. Este ejemplo terminó de quitarme muchas dudas... 💟💟
Este curso está excelente y lo voy a terminar. Un abrazo desde Colombia
Excelente! Comparte para llegar a más personas
🧙 Buenos videos y muy bien explicados, muchas gracias!!!
Hola, muchas gracias
Excelente explicación maestro :D
Gracias. Saludos
Como siempre, excelente explicación excelente video 👏👏🙌
Un saludo👋🏻😉
se me hizo mas facil entender esto que la asincronia y event loop ahhaha, pero ya entendi, muchas gracias!
👋🏻😉
No sé quienes le dan dislike a tus videos pero los encontraré y los obligaré a quitarlos okno jajaj
Es el mejor curso de JS que he encontrado en youtube, udemy y coursera, y es totalmente gratis!
Muy bueno Jon, Muchas gracias!!!
Muchas gracias!
Al principio no le entendí muy bien respecto a la callback, cuando se invoca la funcion y se manda como parametro una arrow function, cuando lo analicé y entendí dije orale!!, que padre no sabía que se podía hacer eso!
Además de los buenos memes había visto algunos, pero poco los entendía ahora todo tiene sentido GRACIAS por hacer siempre las clases interesantes
;)
Master! Mis respetos, de verdad que te felicito por el dominio del tema
Muchas gracias!
Recién estoy entrando al concepto de los callback y las promesas, me está resultando algo complicado entender toda la lógica, pero poco a poco lo voy entendiendo, gran video
🤓👍🏻
Estoy estudiando en Platzi y acompaño algunos temas con tus videos, explicas genial. Aunque este tema es un poco complejo. Saludos desde Argentina jon, gracias por tu contenido de verdad.
😉👌🏻
@@jonmircha El profe del 2020 si estaba más pro, por qué ahora se puso en modo hippie?
excelente contenido gracias
Gracias. Saludos
Sería bueno un curso de Angular!
Excelente vídeo!
😉👋🏻
un grande amigo!
Muchas gracias!!👋🏻😉
Gracias JON entendí toda la lógica del porque los callback, como resolver el hecho de que el programa no se frene y al mismo tiempo la importancia de resolver tareas en forma ordenada sin poder saber a ciencia cierta que tiempo demorara cada una en completarse, que seria como generar hilos a mi forma de ver. Lo que aun no me queda claro y espero poder ver la luz al final del túnel mas adelante es como modularizar todas estos pequeños pasos en codigo mas simple, mantenible y que de tener un error se lo puede identificar fácilmente sin caer en el descontrol este de la pirámide. Gracias por tu tiempo.
Podrías resolverlo con funciones asíncronas, cuando lleguemos a AJAX lo entenderás 😉
Excelente como siempre Jon, aprender contigo es un placer, mil gracias!!!!!!
Me gustó el tema, aunque los Callbacks lo entiendo como un mecanismo de "respaldo" es decir, en momentos que ejecute una función asíncrona, habrá un respaldo en caso tal. Tal vez la función que usaste con el SetTimeout no lo he prácticafo lo suficiente pero el concepto me queda claro que es lo importante, thanks Jon.
😉👋🏻
Que buena explicacion , pero como me costo entenderlo no me carburaba el cerebro jaja , excelente profe!
Excelente👋🏻😉
Gracias Jon, excelente vídeo, aquí si entendí con el ejercicio el Callback.
Que bien :)
Está muy bueno el curso gracias jonmircha, simplemente un crack jaja 🦊
Muchas gracias!
super claro profe! gracias
😉👍🏻
Excelente clase, muchas gracias!
Gracias profe.. entendido!!... entonces me faltan 7$ para el taco.. Gracias profe
😉👋🏻
el mejor profe de programacion de habla hispana 🦾
🙈🙌🏻
@@jonmircha ☺
Excelente!
Gracias!
me ayudo mucho
😉👍🏻
Excelente contenido. Espero que tu canal crezca. Sigue así. Saludos desde Arg.
Gracias! Saludos!
Excelente clase. muchas gracias por el aporte.
woow muy bien explicado , gracias por este gran contenido
De nada, comparte para llegar a más personas
@@jonmircha claro , lo estoy haciendo de hecho
Gracias Jon, muy buen video extensamente preciso para entender este tema 👏
Ídolo!!!!!!
Esto si es una forma de disfrutar del confinamiento en mi país. Eso sí, hago tantos checks con "console.log" para ver donde y como se mueve el código que me voy a acabar tatuando el "maldito" console.log.
jajajaja
gracias
De nada
Gracias, excelente clase.
Al principio me costo asimilar y entender la Asincronia en JS, todo eso del event loop me confundía. Ahora que estaba viendo esta clase entiendo que las callbacks son las "tareas" (llamemolo asi) que se van apilando para ser ejecutados segun el tiempo que le hemos dado en el "setTimeout". Hasta que no se ejecute una, no podra continuar con la siguiente (eso entiendo yo). Es por eso que se van anidando las funciones una tras otra, ya que si no se hace de esta manera "x" tarea que se tenia que ejecutar de ultimo va terminar ejecutandose de primero y NO se estaria aplicando el asincronismo. ... ESO ENTIENDO YO. :p
😉👍🏻
Pregunta seria: No entiendo este símbolo | en el minuto 5:14 ¿Qué puede significar? ¿Es una expresión regular?
Me falto otro | es un or || 🤭
Con este video me pasó lo mismo, como cuando vimos los prototipos y luego el azucar sintactico, espero que las promesas me saquen de estas dudas que tengo JAJJAJAJAJ
👋🏻😉
Hola estaba leyendo del libro "Eloquent Javascript", la sección donde habla sobre las funciones de orden superior y callbacks y me quedó una duda: ¿Se pueden pasar parámetros a una función que ya está siendo parámetro de otra función? El libro pone este ejemplo:
function repeat(n, action) {
for (let i = 0; i < n; i++) {
action(i);
}
}
repeat(3, console.log);
Pero console.log imprime lo que se declara dentro de repeat o sea el valor de i. Existe una forma de pasarle parámetros en la función action para que imprima otra cosa? Por ejemplo algo así:
repeat(3, console.log("¿Hola Jon como andas?")); // este código no funciona
Mi intención es reutilizar esta función repeat para hacer todo tipo de tareas por ejemplo:
repeat(10, dibujarCuadrados(width, height, color));
repeat(5, enviarNotificacion(mensaje));
Saludos genial curso. Ojalá puedas darme la respuesta ya me dí la cabeza contra la pared unas cuantas veces con este tema, la verdad no lo entiendo jajaj.
En los ejercicios de AJAX vemos ejemplos de lo que comentas, paciencia ;)
entiendo casi todo, pero si es algo confuso que todos los llamados a la funcion principal este dentro del primer callback ,
entonces al volverla a llamar se ejecuta su interior que a su vez tiene una operacion asincrona con el nuevo callback ,pero la funcion no ejecuta ese nuevo callback asincrono hasta que el anterior termine su operacion (creo xd)
Ty Jhon♥
Esto anuncio me gusto 4:25
Hola jon , de nuevo te comento , primero pues que buen video!! , solo tengo una duda , porque invocas de nuevo la funcion dentro del cuerpo del callback?? , osea cuando invocas la funcion que tenia por parametro del callback , seria asi "miFuncion(value , ()=>{})" y ahi ya lo invocas , pero luego dentro del 2 argumento (el cuerpo del callback) , vuelves a invocar esa funcio , formando el dichoso callbackhell , pero mi duda es porque lo invocas dentro del 2 parametro , y no afuera ??? espero me puedas resolver , gracias :)
Como siempre, excelente contenido.. No te falta sino buscar plastilina para explicarlo jajajajaja, mil gracias Jon como siempre, bendiciones y nunca cambies!!! 🧙♂️🧙♂️🧙♂️
🤗
Buenas profe una consulta, en el setInterval porqué tomá el valor random en la disyunción y nunca el numero de la izquierda, he probado poniendo otros numeros y siempre toma el aleatorio. gracias
por el corto circuito que hace el |
@@jonmircha ahora viendolo de nuevo, porque | ? el or no se hacia acaso con dos, es decir | | ? entiendo que el cortocircuito toma como false el 0 y por eso iria siempre por el valor de la derecha como en tu ejemplo. pero yo le pongo otros valores como el 2, 5 etc y nunca me los toma
Gracias por este video! Es de los pocos que vi que me ayudó a entender mejor las callbacks. Pero tengo una pregunta tonta: en el minuto 6, por qué le pasas "value * value" como parámetro a la función? No debería estar entre llaves, con el código que se ejecuta?
no es necesario, antes de pasar el parámetro hace la operación
Después de ver el video por un lado solo entiendo que la palabra callback equivale a función recursiva y por otro lado asincronia se refiere a poder ejecutar procesos de manera paralela, no se que tiene que ver una cosa con la otra
no, callback no es lo mismo que recursividad....Recursividad es un metodo en el que una función se llama a si misma DENTRO DE SU PROPIO CUERPO. Callback es una función que SE PASA COMO ARGUMENTO a otra funcion y se llama en algun momento posterior dentro de la funcion principal.
Las callbacks serían una manera de hacer sincronía dentro de la asincronía?
😅
Hola profesor, su curso está super genial,pero tengo una duda,en la parte del callback donde puso (value, value*value) eso solo se puede poner en una callback por qué lo intentó poner como parámetro en una función normal y me da un error,le agradezco cualquier ayuda
Claro por que la callback se ejecuta en un segundo plano de la primer función en la que se invoca 😉 cuando llegues a los ejercicios del DOM y AJAX entenderás más de las callbacks
Hola en el minuto 5:38, que significa este simbolo | despues del 0?
or pero me falto el otro pipe 🤭
Hay algun video donde expliques el tema de la recursividad ?
Aún no
osea que al hacer un
boton.addEventListener('click' , () => {
alert("EJECUTASTES UN CALLBACK");
});
eso es un callback tambien?
Sí lo manejadores de eventos son callbacks
utilizas alguna extension del programa para que el código se tabule solo?
Revisa mi curso de VSCode ahí esta toda mi configuración
👏👏👏 🙏🙏🙏
👋🏻😉
Este es el primer codigo que me cuesta entender , después de practicarlo lo comprendí de la siguiente manera,
haciendo un ejemplo basado en el del video
function nameCB(name,callback){
setTimeout(()=>{
callback(`Hola ${name}`);
},
2000);
}
nameCB("Eloy",(result)=>{
console.log(result)
})
La funcion nameCB recibe un valor de tipo String y una funcion , dentro suponemos con el setTimeout que es el tiempo que tomara la peticion ,
por lo tanto podemos i]gnorarlo y centrarnos en que dentro de la funcion nameCB , se hace un llamado a la funcion que se le sera enviada como argumento , dicha funcion lo que hara es simplemente agregar ela palabra Hola , al valor enviado como argumento a la funcion.
Al llamar a la funcion nameCB, esta requiere 2 parametros , 1 es el valor que queremos concatenar y el segundo es la funcion callback PERO (aqui es donde no entendia bien) se le asigna una variable en los parametros , que sera a fin de cuentas la variable que almacenara el resultado que devuelva la callback , por lo que la funcion argumento solo tiene que imprimir dicha variable
Mi confusion fue que estaba viendo ese result como un argumento de entrada , siendo que esos parametros son para cachar o recibir los valores que retorne la funcion callback.
Si esoty errado en algo por favor corríjanme , por lo pronto , bajo esa logica entiendo el funcionamiento de las callbacks (8
PD: excelente videoo
👍🏻
Entiendo que lo que conseguimos con callback es que por ejemplo se cargen las imagenes que son interactuables de la pagina,sin que el usuario pueda acceder a ellas, y paralelamente callback premite que se vaya cargando el resto del codigo, es asi?,gracias :)
:)
super bien
Yo tampoco entendi nadita pero en otros lados dicen que un callback solo es una funcion que recibe otra funcion como parametro
Entonces si lo entendiste
Hola, soy nuevo en esto y no entiendo muy bien como hace js para saber cuales serán los valores que tomara para "result" se que los valores que toma son los del callback, pero no se como ni porque, cualquier ayuda lo agradecería.
Sigue con el curso, cuando llegues a la parte de AJAX ahí se vera todo lo de asincronía ;)
Cuando se termine el curso de JS más o menos que nivel dependiendo claro está de la agilidad mental o lógica de la persona, que nivel tendría en cuanto a JS respecta especificamente teniendo en cuenta que sería una respuesta con sentido figurado incluyendo al sindrome del impostor por igual jajaja, es una duda fuerte para muchas personas que empiezan en esto del desarrollo pero me gustaría saber que tanto se podrá adquirir dejando fuera las investigaciones autodidactas de contenido, espero tu respuesta profe! Mi pregunta no más es por curiosidad esas dudas que surgen de momento sabe XD
Tendrías que ser un Junior Avanzado
@@jonmircha Alv que potente :0, mas ganas aun de seguir con tu curso :D
👏👏👏
👋🏻😉
Una observacion, no se si es valida o no, es que me he fijado que el mecanismo de las callbacks es contrario a las de las funciones normales. Las funciones normales se declaran y luego son llamadas, por otro lado, las callbacks son algo parecido llamadas dentro de la funcion y luego son declaradas dentro de la funcion.
Saludos desde la Republica Dominicna.
Recuerda que en JS las funciones son elementos de orden superior, lo que significa que prácticamente puedes hacer cualquier cosa con ellas, definirlas, pasarlas como parámetros (como el caso de las callbacks), retornarlas, asígnarlas en variables, etc
@@jonmircha Gracias por la aclarición 👍
Hola , te hago una consulta? Como hago para llamar dentro de un array de objetos a uma propiedad de ese objeto? Por ejemplo tengo un objeto llamado perro h dentro de ese objeto tengo un array y dentro del array una propiedad llamada nombre, se que si hago, un console.log del objeto, me retorna todo el objeto pero cuando le hago el console.log de por ejemplo:perro.nombre me salta error, sera porque esta dentro del arraya? Si es asi como hago para llamar a esa propiedad?
En vez de usar la sintaxis de punto usa la sintaxis de corchetes
no estaria entendiendo de donde saca un resultado la variable resultado :( o porque se almacena en el? (los parametros que se pasan al callback dentro de el setTimeout, pasarian a heredarse a la funcion que llamamos?, ya que no entiendo porque se puede hacer multiplicaciones dentro de esos parametros del call back :(
serian como representativas donde cada posición se hereda a la los parámetros del la función en si ?) algo asi?
No se hereda, se pasa como argumento de la función
@@jonmircha si me di cuenta tiempo despues jaja :( estuve bastante tiempo confundido con eso y al final solo es la invocacion de la funcion dentro de si misma jaja gracias Jon¡¡¡¡¡¡
¿que pluggin usas o como le haces para que todo lo que te sale dentro de las comillas francesas (``) sea de diferentes color? en mi VSC son de un mismo color :c
jonmircha.com/vscode
como hago para comentar varias líneas en Javascript? pense que era control + k + u
yo lo hago con alt + shif + s
@@jonmircha gracias, pero no me sirvió, pero ya lo encontré
Porque el parámetro callback en la función cuandrocallback es una función? si no lleva la palabra clave function y tampoco es una arrow function
por que recibe una función, simplemente por eso
@Estela Marchesani pero si empezó a crear la arrow function en el minuto 6:38 no debería tener un nombre dicha arrow function?
@Estela Marchesani pero al momento de declarar una función flecha anónima esta debe ser asignada a una variable y eso no sucede en el video el profesor lo explica en este video ruclips.net/video/WuCw9agV3Rc/видео.html y tambien el video de funciones
Saludos Prof,
1. Pero entonces las Callback son bloqueantes, no?
2. Dónde consigo esos iconos tan cheveres que adjunto en la cúspide de la pirámide Callback hell??? 😻
No, no son bloqueantes se ejecutan en 2 plano, emojipedia.org/
Algo importante sobre los callbacks, corríjanme, por favor, si estoy equivocado:
Al ver nuestras funciones decuadradoCallback estuve confundido al principio, pero ahora creo que lo visualizo mejor. La callback no es la función cuadradoCallback, sino la función flecha que dentro de su scope ejecuta nuevamente a la función cuadradoCallback(1), no obstante, esta ejecución de cuadradoCallback(1) no es la función callback de cuadradoCallback(0). La función callback para cuadradoCallback(0) es la arrow function que comienza (value, result) => {}. Dentro de su contexto, esta callback function ejecuta nuevamente cuadradoCallback, pero con un nuevo valor para el parámetro value, lo que abre una nueva callback como arrow function que dentro de su scope ejecuta a cuadradoCallback(2) y así hasta la ejecución de la última callback que recibe a 5 como value y no vuelve a ejecutar cuadradoCallback en su scope.
👋🏻😉
En resumen: una callback es una funcion pasada como parametro a otra funcion. 😁👍
👍🏻
Quizas esta forma me lia muchisimo y no lo acabo de entender del todo. Es mas fácil de esta forma o tengo algo mal?
function callback_primera (cb_exponente) {
setTimeout(() => {
cb_exponente(0)
cb_exponente(1)
cb_exponente(2)
cb_exponente(3)
cb_exponente(4)
}, Math.random() * 2000)
}
function cb_exponente (num1) {
console.log(num1 ** num1)
}
callback_primera(cb_exponente)
Aún no logro comprender del todo la aplicación de un callback en una operación asíncrona como puede ser la llamada a una base de datos. Algo que no entiendo es, por ejemplo, si se quiere hacer la petición a una base de datos y puede llegar a tardar un poco en cargar todos los datos, como es posible que se le diga al programa explícitamente que debe esperar a que todos los datos sean obtenidos y no siga ejecutando las siguientes lineas si js es asíncrono y no bloqueante, algo así como cuando carga una página de ventas de distintos productos, ¿o eso se resuelve solo mediante promesas?. Ayuda por favor, esto es algo que no me deja dormir jaja. Agradecería demasiado un ejemplo con un código sencillo ;).
Cuando llegués a la sección de AJAX y APIs lo entenderás mejor 😉
Comentado, gran contenido :v xd
Se me hizo un poco difícil entender la estructura del ejemplo...pero ya está. Una función adentro de otra y le mandamos un setTimeout(? jaj x)
haber si entendi. El temporizador finge ser una llamada a alguna base de datos y hasta no tenerla, no se ejecuta. si pongo un console.log("algo") despues de todo el callback hell este console se ejecutaria primero puesto que esta en el hilo y el callback hell de mientras pasa por la pila de llamadas... ahhh he estado como 3 horas tratando de entender todo esto de asincronia y callback.
Sí, el temporizador es una simulación a una solicitud como bien lo comentas
que significa el | en el minuto 5:14?
Es un operador de corto circuito.
JAJSRJAHSARHHM;UHKE%DFGKERGVB (Ayudando al algoritmo de RUclips para que aparescan tus videos jon)
:)
creo que para algunos temas haria falta tipo presentacion o explicacion en powerPoint, o ejemplos graficos... solo una sugerencia... me constaba entender estos temas y fijate que en Appdelante, parte 1, usan unos graficos ...tal vez te sume incorporarlos... son muy buenas tus clases y agradezco que sean tan completas
Lo siento pero no soy de presentaciones, soy más práctico y directo al código
Como se hacen los emojis en visual studio? ohhh
tecla de windows + .
Entendi que es un callback, pero no entiendo como llevarlo a codigo, como usarlo
Estoy por morir desde que empezó la clase 45 🕳️ bombardeo de información.
🤭 tómalo con calma 😉