Excelente, creo que puedo decir que al menos ya entiendo mucho más este concepto; tanto tutorial al respecto, tanta gente explicando el concepto, y tan pocos que son capaces de hacerlo entender; mil gracias!
GRACIAS por el tiempo para realizar el video y explicarnos amigo, voy iniciandome en la programacion y las explicaciones claras son de mucho valor para mi en estos momentos.
Cierto, al prototype solo se debe asignar métodos o propiedades que van a ser compartidas por todas las instancias ... eso economiza algo de memoria porque están siendo compartidas por todos ... las propiedades que son particulares a cada instancia y que deben mantener si propia copia o versión, se deben poner dentro de la función constructora ...
El asunto con JavaScript es que se hace todo muy en el aire. Si aprendes Java o C++ todos estos conceptos se entienden mejor. En síntesis, una función constructora es la que tú usas para crear una instancia de un objeto. Siguiendo el ejemplo del video, yo puedo hacer: var miPersona= new Person("Fulano de tal",25); Como ves, la función Person se ha utilizado justo después de new, lo cual quiere decir que dicha función retorna un objeto de tipo Person (aunque los tipos en JavaScript no son tales). Ahora haré lo mismo de forma más arcaica: function Person(nombre, edad){ return { name: nombre. age: edad }; } Otra forma para esta misma mecánica sería: function Person(nombre, edad){ nuevaPersona= { name: nombre. age: edad }; return nuevaPersona; } Ambas formas son equivalentes. Ahora para crear una persona lo haría así: var miPersona= Person("Fulano",25); Así pues, un constructor es una operación que se encarga de crear un nuevo objeto y retornarlo. Esto tiene que ver con Tipos Abstractos de Datos (TAD), ya que la idea justamente es abstraer un modelo de la realidad y llevarlo a un código fuente. Para un TAD se suelen crear operaciones CONSTRUCTORAS, SELECTORAS (conocidas como getter, que son para obtener valores de los atributos), MODIFICADORAS (conocidas como setter, que son para modificar valores), PREDICADOS (que son funciones booleanas para consultar algo) y DESTRUCTORAS (que en JavaScript no existen). Si puedes aprender programación con otros lenguajes como C++, Pascal o Java, te ayudaría mucho a comprender mejor lo que se hace, porque como dije, en JavaScript es todo muy "en el aire", mientras otros lenguajes definen todo de forma más estricta y estructurada.
@@KaEduSoft Oh amigo gracias, muy bien explicado, ojala hubiera visto esta respuesta en aquel tiempo. Es como dices, lo explican muy en el aire, yo finalmente aprendí fue porqué conseguí un blog de un ruso que explicaba todo el funcionamiento de Javascript en detalle, igual gracias amigo.
Muy buen video y las explicaciones tanto graficas, teórica y practicas excelentes! 👍🏻 Consulta que es más conveniente usar class Person {} o realizar una función constructora? Saludos!
Es correcto, solo que esto sirve para saber de donde se origina todo, ya que realmente las classes son una capa extra o syntactic sugar, pero el navegador por si solo no las entiende, tienen que ser transpiladas.
Excelente, creo que puedo decir que al menos ya entiendo mucho más este concepto; tanto tutorial al respecto, tanta gente explicando el concepto, y tan pocos que son capaces de hacerlo entender; mil gracias!
Te amo, por fin pude entenderlo, me volvi loco tratando de entender como es que funciona esta! gracias totales!
amigo usted es un verdadero conocedor de la materia, supo explicar e de una forma antes vista felicidades
me estaba vovlviendo loco intentnando comprender que era el prototype. Ahora ya estoy mucho mas claro. Gracias!!!
"Interest, interesante" 😆
Buen video Juan, está clarísimo, gracias!
lo entendi muy bien despues de leer mucho sobre el tema sin lograr comprender, muchas gracias!!
Gracias, excelente explicación, saludos desde Argentina!.
Muy bien explicado, de hecho creo que es la explicación más clara que he visto en la red, saludos!
Saludos victor!. Que bueno que te sirvió
GRACIAS por el tiempo para realizar el video y explicarnos amigo, voy iniciandome en la programacion y las explicaciones claras son de mucho valor para mi en estos momentos.
Cierto, al prototype solo se debe asignar métodos o propiedades que van a ser compartidas por todas las instancias ... eso economiza algo de memoria porque están siendo compartidas por todos ... las propiedades que son particulares a cada instancia y que deben mantener si propia copia o versión, se deben poner dentro de la función constructora ...
que maestro, con el video y este comentario ya entendí todo jajaja!
Parcero, super clara la explicación muchas gracias!
Sos el unico al que le entendi! gracias!
Javascript es ensamblador de alto nivel. Nunca en la vida se debió haber creado algo así.
Está brutal. En serio, muy bien explicado.
Gracias por ver mis videos bro!
me ayudó a entenderlo tan rápido :) no me entraba con nada y con este video lo entendí gracias!
Excelente explicacion. Muchas gracias!
Muchas gracias, explicacion 100/100
Gracias por aclararme el tema, Me ayudo mucho
Genial! Son como propiedades que se pueden setear por default! Me gustó mucho el video. Me sirve para hacer mis dibujitos en Canvas.
muy bien explicado, gracias
osea que con los prototypes nos serviria para agregar propiedades en general y asi ahorrarnos tiempo?
Hermano, excelente explicación, un abrazo!
entonces se podría decir q el prototype se usa mejor en funciones para no tener inconvenientes o me equivoco?
buen video bro !! una buena explicación
Wow, no sabia esto. Porfa, sigue sacando más temas de JS, como estos.
Bien explicado, felicidades :)
Muchas gracias por tu tiempo, muy clara la explicacion, un sola recomendacion en la parte que pruebas por consola se ve muy chica la letra, Saludos
Excelente video hermano
Entendido! Muchas gracias
Bastante útil este video, muy buena la explicación y los ejemplos, gracias
¡Excelente explicación! ¡Muchas gracias!
Excelente video, ya me quedo claro como usar el prototype !
Excelente video
Ahora lo entendí 🤯
Excelente explicación!
Gracias sirvio de mucho.
Entonces prototype vendría siendo un almacenamiento compartido entre todos las instancias que tenga ya que compartirán las mismas propiedades
Gracias bro!
No entendí en que caso sería útil entonces usar el dunder proto ?
Gracias por este excelente material, un saludo 👍🏻
muy bueno capo, muchas gracias
Básicamente, es como definir atributos o métodos estáticos.
Amigo que es exactamente una función constructora? Que se diferencia de una función normal, y que significa this? Gracias
El asunto con JavaScript es que se hace todo muy en el aire. Si aprendes Java o C++ todos estos conceptos se entienden mejor. En síntesis, una función constructora es la que tú usas para crear una instancia de un objeto. Siguiendo el ejemplo del video, yo puedo hacer:
var miPersona= new Person("Fulano de tal",25);
Como ves, la función Person se ha utilizado justo después de new, lo cual quiere decir que dicha función retorna un objeto de tipo Person (aunque los tipos en JavaScript no son tales). Ahora haré lo mismo de forma más arcaica:
function Person(nombre, edad){
return {
name: nombre.
age: edad
};
}
Otra forma para esta misma mecánica sería:
function Person(nombre, edad){
nuevaPersona= {
name: nombre.
age: edad
};
return nuevaPersona;
}
Ambas formas son equivalentes. Ahora para crear una persona lo haría así:
var miPersona= Person("Fulano",25);
Así pues, un constructor es una operación que se encarga de crear un nuevo objeto y retornarlo. Esto tiene que ver con Tipos Abstractos de Datos (TAD), ya que la idea justamente es abstraer un modelo de la realidad y llevarlo a un código fuente. Para un TAD se suelen crear operaciones CONSTRUCTORAS, SELECTORAS (conocidas como getter, que son para obtener valores de los atributos), MODIFICADORAS (conocidas como setter, que son para modificar valores), PREDICADOS (que son funciones booleanas para consultar algo) y DESTRUCTORAS (que en JavaScript no existen). Si puedes aprender programación con otros lenguajes como C++, Pascal o Java, te ayudaría mucho a comprender mejor lo que se hace, porque como dije, en JavaScript es todo muy "en el aire", mientras otros lenguajes definen todo de forma más estricta y estructurada.
@@KaEduSoft Oh amigo gracias, muy bien explicado, ojala hubiera visto esta respuesta en aquel tiempo. Es como dices, lo explican muy en el aire, yo finalmente aprendí fue porqué conseguí un blog de un ruso que explicaba todo el funcionamiento de Javascript en detalle, igual gracias amigo.
esta bueno el ejemplo pero porfa agranda la consola para la proxima
gracias genio
Muy buen video y las explicaciones tanto graficas, teórica y practicas excelentes! 👍🏻
Consulta que es más conveniente usar class Person {} o realizar una función constructora?
Saludos!
Para mayor comodidad usa class Person {}.
@@JuanOrtizDev Muchas gracias! Saludos y el mejor de los éxitos!
A qué hora haces tanto video que ni te veo 😂
hahahaah.. Pa que veas :)
@@JuanOrtizDev Mira!! tu ejemplo apareció!! Excelente video, me ha quedado mucho mas claro!
gracias.
gracias no entendia nada me salvaste
Jeje para entenderlo bien primero busque la definicion de prototipo
"esta consola no me gusta. Voy a pasar a la del navegador"
😑🧐
Lo entiendo pero sinceramente no le veo utilidad existiendo ya las clases en JS
Es correcto, solo que esto sirve para saber de donde se origina todo, ya que realmente las classes son una capa extra o syntactic sugar, pero el navegador por si solo no las entiende, tienen que ser transpiladas.
no le entendí nada
Bien explicado y util