Curso JavaScript: 55. Proxies -

  Рет қаралды 25,213

jonmircha

jonmircha

Күн бұрын

Пікірлер: 162
@harrinsonA
@harrinsonA 4 жыл бұрын
16:52 Resumen del concepto Proxy
@federicolopez6198
@federicolopez6198 2 жыл бұрын
He pagado cursos, intente ingresar a un bootcamp pero nadie ha explicado tan bien como Jon, gran curso, me animas mucho a seguir, aunque no retenga todo, siento que entiendo todo mas facil contigo!
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@xaviervelez9692
@xaviervelez9692 3 жыл бұрын
La función del handler también se puede realizar de la siguiente manera const handlerPersona = { set(obj, prop, valor){ prop in obj?obj[prop] = valor:console.error(`La prop ${prop} no existe en el objeto`); } }
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻
@carlosmariorestrepo-vn6qp
@carlosmariorestrepo-vn6qp Жыл бұрын
Muchísimas gracias, por tanto esfuerzo para ayudarnos a entender; mucho mas fácil y mejor explicación no hay bendiciones
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@paolarodriguez6342
@paolarodriguez6342 3 жыл бұрын
estuve buscando por toda la web y esto me ayudo a entenderlo mejor.. gracias por su dedicación
@jonmircha
@jonmircha 3 жыл бұрын
😉🙌🏻
@sofialopez6048
@sofialopez6048 2 жыл бұрын
excelente clase! Contenta de que llegue a un tercio del curso, vamos por mas!Gracias Jon!!! ojala todo lo que das te vuelva por mil!
@jonmircha
@jonmircha 2 жыл бұрын
😉👋🏻
@williamalexanderpineda6098
@williamalexanderpineda6098 2 жыл бұрын
Excelente curso compadre!
@jonmircha
@jonmircha 2 жыл бұрын
👋🏻😉
@nikolahs92
@nikolahs92 Жыл бұрын
sept 11 1969**Oct 4 2023 gracias excelente curso felicidades John Mircha
@jonmircha
@jonmircha Жыл бұрын
Gracias, saludos
@BronzasMoments
@BronzasMoments 4 жыл бұрын
Actualmente estoy siguiendo el de node js es un poco viejo pero aún sirve y explicas súper bien
@leonsosa8932
@leonsosa8932 4 жыл бұрын
igual yo
@Wiiiiizard
@Wiiiiizard 2 жыл бұрын
🧙‍♂Muchas gracias!!!
@jonmircha
@jonmircha 2 жыл бұрын
Un saludo
@carlosjavierorozco8418
@carlosjavierorozco8418 2 жыл бұрын
Lo entendi, pero me hace falta practicarlo mas. Pero sigo pa´lante! Gracias!
@jonmircha
@jonmircha 2 жыл бұрын
😉
@johnherrera5913
@johnherrera5913 3 жыл бұрын
Master! Genial todos los cursos mil gracias por compartir sus conocimientos
@jonmircha
@jonmircha 3 жыл бұрын
Con mucho gusto
@timawid
@timawid Жыл бұрын
Cada video es una joya, todo muy bien explicado, eres el mejor Jon 🙌
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@christianosorio9239
@christianosorio9239 4 жыл бұрын
Gracias profe. Aproveche y valide lo que menciono de la edad, además una manera más corta de validar el ingreso del nombre y el apellido es con esta expresión regular > if(prop === 'edad' && Math.sign(valor) === -1) if(prop === 'edad' && valor === 0)
@andrescomba5121
@andrescomba5121 4 жыл бұрын
Excelente, muy bien explicado este tipo de Objeto... la verdad no lo usaba, por que no tenia muy claro su funcionamiento, gracias.... Jon... :)
@jonmircha
@jonmircha 4 жыл бұрын
De nada :)
@leomax522
@leomax522 Жыл бұрын
Bárbaro Jon, aunque no nos conozcamos, ya te siento como mi amigo. Si bien reconozco que he visto los videos muy rápido y he practicado, me siento como que cada vez me doy cuenta que me falta mucho, y debe ser así, pero estoy seguro que al seguir practicando y creando proyectos reales, estos conceptos van a aflorar en nuestras mentes y volveremos a tu fuente sagrada de videos a buscar las respuestas. Gracias Jon. Abrazo desde un pueblito pequeño de Argentina!!
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@armandoWebDev
@armandoWebDev Жыл бұрын
Proxy es una API que actúa como un wrapper sobre el objeto que se invoca y permite "sobreescribir" los métodos default que ese objeto hereda por la cadena de prototipos del objecto Object. Si se necesita acceder a los métodos default dentro del proxy se utiliza la API Reflect
@edwinroman30
@edwinroman30 4 жыл бұрын
Muy interesante, de esta forma podre agregar mas seguridad a la hora de trabajar con Objetos.
@hernansanabria9685
@hernansanabria9685 2 жыл бұрын
excelente video gracias
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@josealejandrotrejorivera498
@josealejandrotrejorivera498 3 жыл бұрын
increíble todo lo que he aprendido en este curso. Gracias KENAI.
@jonmircha
@jonmircha 3 жыл бұрын
@NickelFirepowerNico
@NickelFirepowerNico 2 жыл бұрын
Muchas gracias por esta clase sobre los Proxies!!! :D
@jonmircha
@jonmircha 2 жыл бұрын
Con gusto
@jonmircha
@jonmircha 2 жыл бұрын
Con gusto
@cashedev
@cashedev 3 жыл бұрын
estoy enviciado con todos tus videos
@jonmircha
@jonmircha 3 жыл бұрын
😉👌🏻
@BronzasMoments
@BronzasMoments 4 жыл бұрын
Gracias Bro estoy aprendiendo cosas que no había visto y de eso que pague un curso de javascript avanzado
@jonmircha
@jonmircha 4 жыл бұрын
De nada, comparte para llegar a más gente :)
@ronaldm.r
@ronaldm.r 4 жыл бұрын
Ya sé, hicieron eso de enseñarte cosas del DOM y a manejar ciertas cosas, pero este tipo de elementos nunca los vistes cierto? Me siento igual XD :'c
@davidcardenas7737
@davidcardenas7737 4 жыл бұрын
gracias profe por su conocimiento he aprendido muchísimos , éxitos , desde Colombia.
@jonmircha
@jonmircha 4 жыл бұрын
De nada, comparte para llegar a más gente :)
@perdomoyaneri8018
@perdomoyaneri8018 Жыл бұрын
Después de 4 semanas; Estoy en la clase número 55. Los temas más complejos para mí fueron: programación asincrónica y orientada a objetos. Al principio de los videos me fue muy fácil porque conocía los conceptos básicos de programación y antes de este curso hice más de 200 ejercicios de lógica de programación. Pero no sabía que después de la lógica había temas más importantes xd Antes me saltaba de lenguajes; y no tenía mi objetivo definido. Pero me gusta el fronend siempre quise estudiar diseño gráfico pero en mi país tardan en ofrecer cupos; en la mejor universidad según mi estado claro no me daba el tiro así que conseguí una beca de ingeniería en informática pero siempre me ha gustado mucho la tecnología. (pasaba horas en la computadora en mi juventud) Y poder ver algo relacionado como el frond end me emociona. Diseñar paginas dinámicas. Gracias a ti estoy cumpliendo mi objetivo. :3 Amèn
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉 A mí no, a tu constancia y disciplina, mi contenido sólo es un medio para el fin que cada uno le quiera dar
@perdomoyaneri8018
@perdomoyaneri8018 Жыл бұрын
Siii Jon. Yo le dedico 4 horas al día. @@jonmircha Y muchas gracias:3
@leonardoprone5967
@leonardoprone5967 2 жыл бұрын
Se entendió perfecto, gracias Jon!
@jonmircha
@jonmircha 2 жыл бұрын
Excelente!
@joelleiva6952
@joelleiva6952 3 жыл бұрын
me gusto bastante esta clase, muy claro todo. Tambien hice un ejemplo con diferentes tipos vehiculos y los valide, para practicar Aca el codigo: const vehiculos = { tipo: "", color: "", velocidadKPH: "", } const manejador = { set (obj, prop, valor){ if (Object.keys(obj).indexOf(prop) === -1) return console.error(`"${prop}" no es un propiedad valida`) if ( (prop === "tipo" || prop === "color") && !(/^[A-Za-zñÑáéíóúÁÉÍÓÚ\s]+$/g.test(valor)) ) return console.error(`"${prop}" solo acepta letras`) if (prop === "velocidadKPH" && typeof valor !== 'number') return console.error(`"${prop}" solo acepta numeros`) if (prop === "velocidadKPH" && valor
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻
@jaimealonsoprietopalomar6349
@jaimealonsoprietopalomar6349 2 жыл бұрын
Jon, buenas noches. Muy interesante tu video y como siempre excelentemente bien presentado y pedagógicamente bien explicado. Gracias !!! . PREGUNTA: No me está validando las restricciones del handler. Qué podría ser? No me muestra error y el código lo hago exactamente a como tu lo explicas. Le he dado vueltas por varios lados pero NO está evaluando las restricciones. Si me pudieras dar alguna orientación, te agradezco. Saludo cordial
@jonmircha
@jonmircha 2 жыл бұрын
😮🤔
@edgarzambrano3505
@edgarzambrano3505 3 жыл бұрын
profe que buen video , creamos el objeto, una nueva instancia del objeto en este caso proxy ,el proxy tiene dos valores el primero es la vinculación con el objeto padre , el segundo es el handler o controlador , en el proxy escribimos los valores que complementen a el objeto padre y mediante el handler o controlador vamos ejecutándolo a la medida que queramos ejecutar ,en caso de que creemos un valor en el proxy diferente a el padre este sera valido lo unico que tenemos que hacer es mediante el handler o controlador darle su respectiva validacion
@jonmircha
@jonmircha 3 жыл бұрын
🤓👍🏻
@yamilcaceres8825
@yamilcaceres8825 4 жыл бұрын
pregunta de esto Tipo no capturadoError: 'set' en proxy: trap devolvió falsish para la propiedad 'nombre' en proxies y bla bla bla Bueno yo lo solucione en el codigo html tenia esto y despues esto y no me salio error alguen me explique?
@GAST0N
@GAST0N 2 жыл бұрын
Me salía el mismo error y no sabía por qué, lo pude solucionar leyendo tu comentario. Le tuve que sacar el "type="module".
@r.w.s.2402
@r.w.s.2402 3 жыл бұрын
Muy útil para validar!
@jonmircha
@jonmircha 3 жыл бұрын
😉👍🏻
@mursum117
@mursum117 5 ай бұрын
Al estar realizando el ejercicio me marcaba error porque al parecer el manejador deber retornar un true en caso de que se ejecute correctamente, no sé si lo actualizaron a día de hoy pero con eso ya pude continuar con la clase.
@javierovallea3836
@javierovallea3836 3 жыл бұрын
Gracias por sus enseñansas.
@jonmircha
@jonmircha 3 жыл бұрын
Con mucho gusto
@eduardorodriguez3266
@eduardorodriguez3266 4 жыл бұрын
una pregunta. porque al agregar el 'use strict' no me deja agregar las propiedades en el proxy? pero sin el sí 🤨
@Ni_idea_de_tecnologia
@Ni_idea_de_tecnologia Жыл бұрын
Muchas gracias por este gran vídeo Mr Mircha. En mi caso he modificado un poco las validaciones usando las expresiones regulares que no enseñaste tiempo atras y me han quedado así: if((key ==="nombre" ||key==="apellido")&& !(/^[a-zñáéíóúü]+$/ig.test(value)) ) { console.error(` `) } if(key ==="edad" &&(value100 || value===undefined||/^\d$/.test(value))){ console.error(`Los datos introducidos en el campo ${key}: ${value} no son correctos. Introduzca un número válido entre 1 y 100. `) }
@carlesbautista8293
@carlesbautista8293 4 жыл бұрын
Bien entendido Jonathan, Gracias por todo tu tiempo empleado!!!este curso es muy valioso.
@undolarmas8766
@undolarmas8766 4 жыл бұрын
Gracias profesor !! lo admiro
@jonmircha
@jonmircha 4 жыл бұрын
Hola, muchas gracias
@joelventura76
@joelventura76 4 жыл бұрын
jhon excelente los cursos la verda estoy viendo cosas que no pense que tenia javascript pero tambien soy cincero me siento abrumado con todas estas propiedades que javascript :S es demasiadod informacion! pero excelente la verdad tratare de darle mas tiempo para entenderlo al 100% :S
@jonmircha
@jonmircha 4 жыл бұрын
APrender JS duele :) pero con práctica todo fluye tarde o temprano, Ánimo :)
@becamilo
@becamilo 3 жыл бұрын
Me gustaría ver al profesor en Platzi. Enseña muy bien
@jonmircha
@jonmircha 3 жыл бұрын
😮
@GAST0N
@GAST0N 2 жыл бұрын
Jon, a pesar de que es una buena práctica escribir las constantes en mayúsculas, en un entorno real pasa a ser necesario hacerlo así?. Veo que tú no las escribes en mayúsculas y a mí me resulta más cómodo escribirlas en minúsculas también.
@jonmircha
@jonmircha 2 жыл бұрын
😃👍🏻
@miguelantonioescuderoperal7485
@miguelantonioescuderoperal7485 4 жыл бұрын
Maestro buen tema, usare el proxy mas seguido :) se ve cool
@cubanolibre5465
@cubanolibre5465 2 жыл бұрын
Aviso de posible fallo en caso de como yo, usar un archivo javascript externo: Si se obtiene un error del tipo "Uncaught TypeError: 'set' on proxy: trap returned falsish for property Name" al usar proxy, prueba a cambiar tu HTML de a A mi me funciono, tal parece que hay problemas entre los type="module" y los proxys. Saludos... Este error salia incluso al pegar el codigo de Jon en mi js. No se cual sea la explicacion tecnica.
@bralca5492
@bralca5492 2 жыл бұрын
En mi caso yo hice eso pero no me funcionó e.e Sin embargo, al borrar el "use strict"; pude solucionarlo.
@jurrrgenOF
@jurrrgenOF 3 жыл бұрын
buen video joven Mircha
@jonmircha
@jonmircha 3 жыл бұрын
😉✌
@Juicio87
@Juicio87 2 жыл бұрын
Me quise adelantar a la explicación de cómo hacer la validación y yo lo resolví así: (obj.hasOwnProperty(prop)) ?obj[prop] = valor :console.error(`La propiedad: "${prop}" no pertenece al objeto original`); Estoy aprendiendo un montón contigo! P.D: El proxy también copia métodos de los objetos!
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@jaimealonsoprietopalomar6349
@jaimealonsoprietopalomar6349 2 жыл бұрын
Gracias. Utilicé esta alternativa y me funcionó, xq no sé que pasa que el método de validación del handler, no me funciona
@dsc_dsc
@dsc_dsc 3 жыл бұрын
Cree un nuevo proxy y le llame `pedro`, luego le asigne valor a cada una de sus propiedades. La cosa es que al momento de crear este nuevo proxy y asignar los valores, al realizar un console.log, persona y jon pasan a tener los mismos valores que pedro. Los proxys no funcionan como las clases que de acuerdo a un "molde" (la clase en cuestión), se pueden instanciar infinitos objetos con diferentes valores, acá una vez que se crea un nuevo proxy y se le asignan valores, todos los otros proxys creados con el mismo objeto pasan a tener su mismo valor.
@jonmircha
@jonmircha 3 жыл бұрын
👍🏻
@MsRodrivas
@MsRodrivas 3 жыл бұрын
Me paso lo mismo, pense que el objeto persona funcionaba como un molde al cual no se modifaca al crear un proxy, so hay que tenerlo en cuenta que creando un proxy tambien estas modificando este objecto inicial persona.
@Juicio87
@Juicio87 2 жыл бұрын
Porque no estás generando instancias, estás haciendo una copia del objeto persona y la característica de los proxys es que la copia hace que se modifique el objeto original; entiendo que la gracia de usar proxys es que al tener el manejador que hace de paso intermedio se puede validar lo que metes en el objeto. Creo que con el método assign() no se puede hacer esto
@angieortizgiraldo9533
@angieortizgiraldo9533 4 жыл бұрын
Este Proxy me recuerda un poco al patrón Abstract Factory, puede ser?
@cristianfernando2951
@cristianfernando2951 3 жыл бұрын
Muy interesante, pero en que casos de uso puedo aplicar Proxies?
@NickelFirepowerNico
@NickelFirepowerNico 2 жыл бұрын
lo podes aplicar en formularios de texto, aquellos que requieren si o si de que estén escritos en letra o numero.
@oscargb2898
@oscargb2898 4 жыл бұрын
Durante 15 minutos buscando mi error y cuando me doy cuenta tenia: console.jon(jon) No se si reirme o llorar.
@jonmircha
@jonmircha 4 жыл бұрын
jajajajaja
@braianrico4422
@braianrico4422 3 жыл бұрын
jajajaja Efecto de Jon 🧙‍♂️🧙‍♂️🧙‍♂️
@timawid
@timawid Жыл бұрын
😂😂
@diegorojas2066
@diegorojas2066 4 жыл бұрын
Tengo una pregunta Jon, ¿Es preferible crear la copia de un objeto usando los Proxies en vez de usar clases?, te agradecería que me enviaras tu comentario u opinión.
@jonmircha
@jonmircha 4 жыл бұрын
Si quieres copiar un objeto usa Object.assign
@diegorojas2066
@diegorojas2066 4 жыл бұрын
@@jonmircha gracias
@jurrrgenOF
@jurrrgenOF 3 жыл бұрын
Jon recomiendas algún libro para aprender JavaScript?
@jonmircha
@jonmircha 3 жыл бұрын
La serie de You dont know JavaScript
@facundogutierrez1132
@facundogutierrez1132 3 жыл бұрын
Porque al utizar el type = "module" de la etiqueta script en html, hace que el proxy no funcione en la consola? estuve buscando mucho cual era mi error, y un comentario decia sobre ese tema del module, y efectivamente borrandolo funcionaba en consola si sacamos el module.
@jonmircha
@jonmircha 3 жыл бұрын
:O
@lautaroasat3690
@lautaroasat3690 3 жыл бұрын
Es cierto, jajaj estuve renegando como 1 hora
@IsaacGarcia-qq8oq
@IsaacGarcia-qq8oq 3 жыл бұрын
ya sabes como se soluciona el error sin quitar el module? :(
@edwardosbertsantamariabeni2879
@edwardosbertsantamariabeni2879 2 жыл бұрын
@@IsaacGarcia-qq8oq solo debes de poner en la funcion set que retorne true y se soluciona
@nerycaballeros3326
@nerycaballeros3326 2 жыл бұрын
Lo que no entiendo es por qué el objeto persona tomó los valores del objeto jon, que sucede cuando quiero crear otro objeto de tipo persona, no deberían estar estos valores asignados exclusivamente al objeto jon y el objeto persona estar vacío ?
@devnull8813
@devnull8813 3 жыл бұрын
se podría decir que un proxy es un servicio de middleware????
@jonmircha
@jonmircha 3 жыл бұрын
algo así
@cod5745
@cod5745 2 жыл бұрын
Una consulta, en mi caso a la hora de modificar los valores a las props, el valor modificado se reflejo automaticamente en la consola (antes de de escribir obj[prop] = value en el handler), es alguna actualizacion de ecma o algo asi?
@jonmircha
@jonmircha 2 жыл бұрын
😮
@IsaacGarcia-qq8oq
@IsaacGarcia-qq8oq 3 жыл бұрын
segun hasta lo que pude ver en MDN el error de 'set' on proxy: trap returned falsish for property 'nombre' se debe al modo estricto que te pone JS al usar modulos :( como se tendria que usar entonces el set dentro de un handler si el modo estricto te arroja ese error? :( gracias¡
@jonmircha
@jonmircha 3 жыл бұрын
👍🏻
@IsaacGarcia-qq8oq
@IsaacGarcia-qq8oq 3 жыл бұрын
@@jonmircha 👀👀
@ArrobaPaz
@ArrobaPaz 4 жыл бұрын
Hola! Quería preguntarle que es más conveniente para validar los atributos ... Los set o los proxies?
@ArrobaPaz
@ArrobaPaz 4 жыл бұрын
Ya encontre lo que buscaba www.freecodecamp.org/news/a-quick-intro-to-javascript-proxies-55695ddc4f98/ Gracias !
@jonmircha
@jonmircha 4 жыл бұрын
Gracias por compartir
@Antonio-qr1sp
@Antonio-qr1sp 4 жыл бұрын
@@ArrobaPaz venia a preguntar lo mismo y esto me aclaro muchas cosas, gracias bro
@eduardomegoguevara3181
@eduardomegoguevara3181 2 жыл бұрын
Hola mircha una consulta, porque cuando escribo return implicito en el error la propiedad twitter desaparece pero cuando no lo hago la propiedad twitter sigue estando igual imprimiendose en el console del proxy y el objeto persona¿?
@jonmircha
@jonmircha 2 жыл бұрын
😮
@eduardomegoguevara3181
@eduardomegoguevara3181 2 жыл бұрын
@@jonmircha si profe, es una duda que la sigo teniendo
@bralca5492
@bralca5492 2 жыл бұрын
@@eduardomegoguevara3181 No se si hayas encontrado la respuesta pero creo que eso pasa porque al no colocar el return, solo estas mostrando en consola el error pero no lo estás "deteniendo" y es por eso que le podes asignar una nueva propiedad con un valor al proxy. En cambió al colocarlo, la ejecución de tu código se "corta" en el condicional. No se si se entendió Jajajajajaja
@eduardorodriguez3266
@eduardorodriguez3266 4 жыл бұрын
Tipo no capturadoError: 'set' en proxy: trap devolvió falsish para la propiedad 'nombre' en proxies.js:16
@weslinmartinez1802
@weslinmartinez1802 4 жыл бұрын
Revisa bien tu codigo
@eduardorodriguez3266
@eduardorodriguez3266 4 жыл бұрын
@@weslinmartinez1802 ya lo resolví. Gracias!!
@juanis11a
@juanis11a 4 жыл бұрын
@@eduardorodriguez3266 como lo resolviste tengo el mismo problema
@percycordova1994
@percycordova1994 4 жыл бұрын
borra el 'use strict' ami me salia ese error, borre esa linea de codigo y funco
@heimancastro1954
@heimancastro1954 2 жыл бұрын
😄😄😄😄😄
@jonmircha
@jonmircha 2 жыл бұрын
😉👍🏻
@davidcardenas7737
@davidcardenas7737 4 жыл бұрын
profe donde podemos encontrar el curso de nodejs el ultimo que usted dicto
@isrraelmendozasuarez9687
@isrraelmendozasuarez9687 4 жыл бұрын
kzbin.info/www/bejne/l4iphopqiKl3atE
@alexanderperezbernal5281
@alexanderperezbernal5281 2 жыл бұрын
existen otras trampas aparte del GET que parten del objeto Reflect.. getPrototypeOf() setPrototypeOf() isExtensible() preventExtensions() getOwnPropertyDescriptor() ownKeys() has() get() set() deleteProperty() apply() construct()
@jonmircha
@jonmircha 2 жыл бұрын
👍🏻
@emirtirso842
@emirtirso842 4 жыл бұрын
al poner "emir.nombre="emir"; " la consola me manda un error, por que? este es el error: 30.js:14 Uncaught TypeError: 'set' on proxy: trap returned falsish for property 'nombre' at 30.js:14 y este mi codigo const persona = { nombre: "", apellido: "", edad: 0 } const manejador = { set(obj, prop, valor){ } } const emir = new Proxy(persona, manejador); emir.nombre="emir"; console.log(emir); pero antes de poner "emir.nombre="emir"; " el codigo funcionaba tal cual como en el video, minuto 5
@jonmircha
@jonmircha 4 жыл бұрын
Ponlo en un codepen
@emirtirso842
@emirtirso842 4 жыл бұрын
@@jonmircha descuide, ya vi que era el html que tenia tipo module y otro script, eran de clases anteriores.
@MrCibershok
@MrCibershok 4 жыл бұрын
Hola John buena tarde, gracias primeramente por tan maravilloso aporte. Desde que inicie tu curso de Javascrip tengo un problema y no lo he podido solucionar, es a la hora de utilizar el signo de igualdad estricta (creo que se llama así) ===. Siempre como tu dices a veces me desconchinfla todo. const persona = { nombre: "", apellido: "", edad: 0 } const manejador = { set(obj, prop, valor){ if(Object.keys(obj).indexOf(prop) === -1){ return console.error(`La propiedad "${prop}" no existe en el objeto persona.`); } if((prop === 'nombres' || prop === 'apellidos') && !(/^[A-Za-zÑñÁáÉéÍíÓóÚúÜü\s]+$/g.test(valor)) ){ }{ return console.error(`La propiedad "${prop}" solo acepta letras y espacios en blanco.`); } obj [prop] = valor; } } const ivan = new Proxy(persona, manejador); ivan.nombre = "Ivan"; ivan.apellido = "Castro"; ivan.twitter = "@mestra"; ivan.edad = 40; console.log(ivan); console.log(persona); Este es el código de este video y me saca este error en consola: proxis.html:26 La propiedad "nombre" solo acepta letras y espacios en blanco. set @ proxis.html:26 (anonymous) @ proxis.html:33 proxis.html:26 La propiedad "apellido" solo acepta letras y espacios en blanco. set @ proxis.html:26 (anonymous) @ proxis.html:34 proxis.html:19 La propiedad "twitter" no existe en el objeto persona. set @ proxis.html:19 (anonymous) @ proxis.html:35 proxis.html:26 La propiedad "edad" solo acepta letras y espacios en blanco. set @ proxis.html:26 (anonymous) @ proxis.html:36 proxis.html:38 Proxy {nombre: "", apellido: "", edad: 0} proxis.html:39 {nombre: "", apellido: "", edad: 0} No se que hacer ya que siempre me pasa al usar el ===.
@jonmircha
@jonmircha 4 жыл бұрын
🤔 mejor sube tu código a un codepen así ni como ayudarte
@MrCibershok
@MrCibershok 4 жыл бұрын
@@jonmircha Segui tu recomendación y este es el enlace: codepen.io/Mestra_18/pen/RwogegB?editors=1111
@christianosorio9239
@christianosorio9239 4 жыл бұрын
Hola! En tú codigo veo que tienes llaves repetidas: if((prop === 'nombres' || prop === 'apellidos') && !(/^[A-Za-zÑñÁáÉéÍíÓóÚúÜü\s]+$/g.test(valor)) ){ //El return debe ir acá }{ //Está llave está demás return console.error(`La propiedad "${prop}" solo acepta letras y espacios en blanco.`); }
@christianosorio9239
@christianosorio9239 4 жыл бұрын
Estoy con tu codigo en mi editor y todo esta ok. No me salta el error que comentas
@MrCibershok
@MrCibershok 4 жыл бұрын
@@christianosorio9239 ahí está el detalle mi amigo, me saca error y no sé por qué razón
@AngelAMartinezA
@AngelAMartinezA 4 жыл бұрын
Hola Jhon, espero que estés bien... estoy haciendo este ejercicio, pero la verdad la validación de (Object.keys(obj).indexOf(prop) === -1) no me la hace, me muestra el mensaje... pero al proxy, como al objeto me sigue asignando la propiedad a pesar de que no estén declaradas, no se que pueda estar pasando, en google chrome me las muestra, probé con mozilla firefox me da un resultado distinto, en el proxy si se cumple la validacion, pero en el objeto no.... que puede estar pasando?
@jonmircha
@jonmircha 4 жыл бұрын
🤔 ni idea subelo a un codepen o un github
@diegoforti23
@diegoforti23 4 жыл бұрын
@@AngelAMartinezA Creo que te estás olvidando el return en la linea 10 entonces no corta y corre el obj[prop] = valor.
@alfredomontes1111
@alfredomontes1111 3 жыл бұрын
hola profe y a todos estoy tratando de hacer la validacion de la edad pero no me funciona if ((prop === "edad") && !(/^[0-9]+$/.test(Value))){ return console.error(`la propiedad ${prop} solo acepta numeros`); } este es el codigo si hay algo malo por favor decirme
@matiasromera330
@matiasromera330 3 жыл бұрын
el parámetro que le pasas es Value o value? ahí puede estar el error
@alfredomontes1111
@alfredomontes1111 3 жыл бұрын
@@matiasromera330 si eso era gracias 😅
@__.bastiann_
@__.bastiann_ 2 жыл бұрын
@@matiasromera330 Buena tarde, ¿Cómo podría hacer además de eso que sólo me reciba número y No un número en cadena de texto?
@braianrico4422
@braianrico4422 3 жыл бұрын
🧙‍♂️🧙‍♂️🧙‍♂️
@helipalacio8772
@helipalacio8772 4 ай бұрын
👨
@jonmircha
@jonmircha 4 ай бұрын
👋🏻😉
@manolais
@manolais 3 жыл бұрын
no sería más facil hacer if (!obj[prop]) { return console.error('propiedad no existe') }
@emersonperalesvillanueva8568
@emersonperalesvillanueva8568 4 жыл бұрын
ta interesante el proxy xd
@jonmircha
@jonmircha 4 жыл бұрын
;)
@hernansanabria9685
@hernansanabria9685 Жыл бұрын
sept 11 1969**Oct 20 2023 gracias excelente curso felicidades John Mircha
@jonmircha
@jonmircha Жыл бұрын
👋🏻😉
@nachosanabria6942
@nachosanabria6942 2 жыл бұрын
gracias excelente video
@jonmircha
@jonmircha 2 жыл бұрын
Gracias a ti
Curso JavaScript: 53. Iterables & Iterators - #jonmircha
14:33
Маусымашар-2023 / Гала-концерт / АТУ қоштасу
1:27:35
Jaidarman OFFICIAL / JCI
Рет қаралды 390 М.
Ful Video ☝🏻☝🏻☝🏻
1:01
Arkeolog
Рет қаралды 14 МЛН
Actual use case for JavaScript PROXY!
13:09
Kevin Ghadyani - JavaScript
Рет қаралды 15 М.
Curso JavaScript: 50. Sets - #jonmircha
18:19
jonmircha
Рет қаралды 29 М.
¿Qué es Node.js? Explicación sencilla
11:14
Programa con Leo
Рет қаралды 26 М.
¿Qué es el Objeto Proxy de JavaScript? 🤔
15:45
hdeleon.net
Рет қаралды 11 М.
Curso JavaScript: 57. this - #jonmircha
22:24
jonmircha
Рет қаралды 30 М.
Curso JavaScript: 52. WeakSets & WeakMaps - #jonmircha
17:27
jonmircha
Рет қаралды 23 М.
¡Deja de usar ternarias para hacer esto en JavaScript! ❌
18:26
Curso JavaScript: 60. WEB APIs - #jonmircha
19:32
jonmircha
Рет қаралды 37 М.