Que buen resumen de todas la descripción y características de la función flecha, muchas gracias por ahorrarme algo de tiempo dejándolo todo sintetizado en este video.
Estaba teniendo problemas entendiendo las funciones flecha. Lo hiciste ver tan sencillo que me da vergüenza no haberlas entendido antes de tu vídeo jaja. Gracias!
Gracias amigo por la información muy breve. Ahora pregunta para todos, más allá del "ahorro" de la palabra function? cuáles son las ventajas? o no necesariamente las tiene y es simplemente otra forma? Saludos
A simple vista será su escritura más compacta, lo que la hace muy útil sobre todo cuando la utilizas como una función que llama a otra función. Pero otra ventaja también muy importante es el objeto "this", el mismo que hace referencia a la instancia que se está creando. Con una función flecha "this" toma el valor del elemento padre, mientras que una función normal, crea su propio "this". Estos son conceptos avanzados, pero cuando vayas profundizando en tu aprendizaje de javascript te hará sentido :)
Muchas gracias! Estoy aprendiendo y esto ayuda muchísimo. Estoy con un ejercicio el cual me han corregido y me mecionaron que una función flecha no puede utilizarse como método de una clase pero no estoy logrando entender el por que, sería ideal una explicación como esta para ese tipo de cuestiones.
En realidad, en JavaScript, las funciones flecha (arrow functions) pueden ser utilizadas como métodos de una clase. Sin embargo, hay algunas diferencias clave entre las funciones flecha y las funciones regulares (funciones declarativas o funciones expresivas) que pueden influir en su uso como métodos de clase. La principal diferencia es cómo se maneja la referencia al objeto actual (el valor de this) dentro de la función. En las funciones regulares, el valor de this se establece en tiempo de ejecución en función de cómo se llama a la función. Sin embargo, en las funciones flecha, el valor de this se hereda del contexto en el que se definió la función flecha. Cuando se utilizan funciones regulares como métodos de una clase, el valor de this se vincula automáticamente a la instancia de la clase en la que se invoca el método. Esto permite acceder a las propiedades y métodos de la instancia a través de this. Por otro lado, cuando se utilizan funciones flecha como métodos de una clase, el valor de this no se vincula automáticamente a la instancia de la clase. En cambio, el valor de this dentro de una función flecha se refiere al valor de this en el contexto circundante donde se definió la función flecha. Esto significa que si intentas acceder a propiedades o métodos de la instancia de la clase utilizando this dentro de una función flecha, es probable que obtengas un valor no definido (undefined) o un valor diferente al esperado.
Hola Estimado... te felicito por el curso en general...tengo una duda... let obj = () => ({nombre: 'Copito', edad: 30 }); console.log(obj.edad); Por qué al desplegar en consola me dice que el objeto es indefinido??.. Agradeciendo tu respuesta saludos
Hola Davel, recuerda que no se está declarando un objeto directamente, no es lo mismo que: let obj = {nombre: 'Copito', edad: 30} Si fuese así, entonces ahí si puedes acceder desde el console.log al obj.edad Pero lo que se tiene es una función flecha que regresa un objeto, entonces lo correcto sería console.log(obj().edad)... o también primero puedes guardar el valor en una constante o variable y después si acceder al valor así: const nuevoObj = obj() console.log(nuevoObj.edad)
Hola 👋. Probé el código de función anónima en la consola del navegador, pero aparece un error en consola: let saludo = function(nombre){ return 'Saludos ' + nombre; } console.log(saludo('David')); Uncaught SyntaxError: redeclaration of let saludo debugger eval code:1 ¿por qué?
El error que estás viendo, "Uncaught SyntaxError: redeclaration of let saludo", ocurre cuando intentas redeclarar una variable que ya ha sido declarada previamente usando la misma palabra clave let. En este caso, parece que estás ejecutando el código en la consola del navegador varias veces, lo que causa la redeclaración de la variable saludo. Puedes resolver este problema de diferentes maneras: Limpiar la consola antes de ejecutar el código nuevamente: Antes de ejecutar el código nuevamente en la consola del navegador, asegúrate de borrar todo el contenido anterior. Esto eliminará la redeclaración de la variable y permitirá que el código se ejecute correctamente. Cambiar la variable de nombre: Si planeas ejecutar el mismo código múltiples veces en la misma sesión de la consola, considera cambiar el nombre de la variable en cada ejecución para evitar la redeclaración.
Hola si, si es una función anónima si. Tienes que darle un nombre para poderla llamar después. Y ese nombre se crea creando una variable o constante. 😊
Excelente explicación y además recapitulas todo al final gracias
Muchas gracias por el comentario! 😊
Casi todos para explicar algo tan basico tardan 30 minutos, lo hiciste en 5 minutos y repasando las funciones, que crack!
Vengo mirando varios videos sobre las funciones flecha y ninguno tan claro como este!, me suscribo
Que buen resumen de todas la descripción y características de la función flecha, muchas gracias por ahorrarme algo de tiempo dejándolo todo sintetizado en este video.
Con gusto! me alegro que te haya sido de ayuda el video 👌😉
Estaba teniendo problemas entendiendo las funciones flecha.
Lo hiciste ver tan sencillo que me da vergüenza no haberlas entendido antes de tu vídeo jaja.
Gracias!
Con gusto Ayrton, me alegra mucho que el video te haya sido de ayuda 👌😉
Historia del origen de las funciones ua-cam.com/video/per-EdoS0NY/v-deo.html
Me gusta la forma tan sencilla en como te explicas bro!! Gracias!!
Muchas gracias Frank 😊
que bueno eres explicando, gracias por compartir tu conocimiento
Con gusto! me alegra que te haya gustado el contenido :)
Muchas gracias ! necesitaba este resumen!!
Con gusto Cristina! 😊
Gracias por la explicación maestro 🙌
Con mucho gusto!
Muchas gracias por la explicación me ha servido mucho! 😃
Buenísimo Leandro! 😊
Muy buena explicación. Gracias
Con gusto Miguel! 😊
Gracias amigo por la información muy breve. Ahora pregunta para todos, más allá del "ahorro" de la palabra function? cuáles son las ventajas? o no necesariamente las tiene y es simplemente otra forma? Saludos
A simple vista será su escritura más compacta, lo que la hace muy útil sobre todo cuando la utilizas como una función que llama a otra función. Pero otra ventaja también muy importante es el objeto "this", el mismo que hace referencia a la instancia que se está creando. Con una función flecha "this" toma el valor del elemento padre, mientras que una función normal, crea su propio "this". Estos son conceptos avanzados, pero cuando vayas profundizando en tu aprendizaje de javascript te hará sentido :)
Muchas gracias! Estoy aprendiendo y esto ayuda muchísimo. Estoy con un ejercicio el cual me han corregido y me mecionaron que una función flecha no puede utilizarse como método de una clase pero no estoy logrando entender el por que, sería ideal una explicación como esta para ese tipo de cuestiones.
En realidad, en JavaScript, las funciones flecha (arrow functions) pueden ser utilizadas como métodos de una clase. Sin embargo, hay algunas diferencias clave entre las funciones flecha y las funciones regulares (funciones declarativas o funciones expresivas) que pueden influir en su uso como métodos de clase.
La principal diferencia es cómo se maneja la referencia al objeto actual (el valor de this) dentro de la función. En las funciones regulares, el valor de this se establece en tiempo de ejecución en función de cómo se llama a la función. Sin embargo, en las funciones flecha, el valor de this se hereda del contexto en el que se definió la función flecha.
Cuando se utilizan funciones regulares como métodos de una clase, el valor de this se vincula automáticamente a la instancia de la clase en la que se invoca el método. Esto permite acceder a las propiedades y métodos de la instancia a través de this.
Por otro lado, cuando se utilizan funciones flecha como métodos de una clase, el valor de this no se vincula automáticamente a la instancia de la clase. En cambio, el valor de this dentro de una función flecha se refiere al valor de this en el contexto circundante donde se definió la función flecha.
Esto significa que si intentas acceder a propiedades o métodos de la instancia de la clase utilizando this dentro de una función flecha, es probable que obtengas un valor no definido (undefined) o un valor diferente al esperado.
que bien explicas! gracias
muchas gracias, muy util el video, aprendí conceptos nuevos
Que buen video papá, muchas gracias!
Con gusto Mauro 😊
muchas gracias
muchas gracias, aprendi nuevos conceptos
Gracias amigo
Con gusto! 😉
Gracias bro . !!!!!
muchas gracias por el video, si el no podria haber realizado mis practicas :,)
Me alegro mucho que te haya sido de ayuda el video Julio!
Excelente, mil gracias
Excelente video. Se los acabo de recomendar a mis estudiantes.
Muy bueno. Gracias
wow amigo muy sencillo y claro para repasar de manera rápida, éxito muy bien🎉
Claro, breve y conciso. Muy bien explicado sus características y sus casos particulares.
gracias David .. a verlo de nuevo para entenderlo bien . la flechas pueden reemplazar las funciones ??
Son funciones expresadas a diferencia de las "clásicas" que son declaradas... Pero funciones al fin.
como siempre muchas gracias por tu contenido amigo, sigue asi!! un abrazo desde mendoza argetina!!, saludos
Te agradezco muchísimo por la explicación!! saludos
Excelentemente explicado!
Seguimos avanzando 💎💎💎💎💎
gracias :) muy claro la explicación
Hola Estimado... te felicito por el curso en general...tengo una duda...
let obj = () => ({nombre: 'Copito', edad: 30 });
console.log(obj.edad);
Por qué al desplegar en consola me dice que el objeto es indefinido??.. Agradeciendo tu respuesta saludos
Hola Davel, recuerda que no se está declarando un objeto directamente, no es lo mismo que:
let obj = {nombre: 'Copito', edad: 30}
Si fuese así, entonces ahí si puedes acceder desde el console.log al obj.edad
Pero lo que se tiene es una función flecha que regresa un objeto, entonces lo correcto sería console.log(obj().edad)... o también primero puedes guardar el valor en una constante o variable y después si acceder al valor así:
const nuevoObj = obj()
console.log(nuevoObj.edad)
Bien!
⭐⭐⭐⭐⭐
🌟🌟🌟🌟🌟
Hola 👋. Probé el código de función anónima en la consola del navegador, pero aparece un error en consola:
let saludo = function(nombre){
return 'Saludos ' + nombre;
}
console.log(saludo('David'));
Uncaught SyntaxError: redeclaration of let saludo
debugger eval code:1
¿por qué?
El error que estás viendo, "Uncaught SyntaxError: redeclaration of let saludo", ocurre cuando intentas redeclarar una variable que ya ha sido declarada previamente usando la misma palabra clave let. En este caso, parece que estás ejecutando el código en la consola del navegador varias veces, lo que causa la redeclaración de la variable saludo.
Puedes resolver este problema de diferentes maneras:
Limpiar la consola antes de ejecutar el código nuevamente: Antes de ejecutar el código nuevamente en la consola del navegador, asegúrate de borrar todo el contenido anterior. Esto eliminará la redeclaración de la variable y permitirá que el código se ejecute correctamente.
Cambiar la variable de nombre: Si planeas ejecutar el mismo código múltiples veces en la misma sesión de la consola, considera cambiar el nombre de la variable en cada ejecución para evitar la redeclaración.
@@CodingTube me dí cuenta que refrescando el sitio web cada vez que ejecuto la función hace que trabaje correctamente. Gracias.
PERO PARA LLAMAR ALA FUNCION, SE TENIA QUE CREAR OTRA VARIABLE ? EL PRIMER EJEMPLO ME REFIERO
Hola si, si es una función anónima si. Tienes que darle un nombre para poderla llamar después. Y ese nombre se crea creando una variable o constante. 😊
Pero falto decir si la función flecha tiene el beneficio de histig
la proxima en un solo video entendido?
Entendido 😊