Soy un novato en esta página y en la programación, algunos de ustedes me han ayudado bastante con la creación de un proyecto que realicé estos días, he aprendido demasiado en tan solo 3 días y así mismo como ustedes me han ayudado ahora quiero poner mi código a disposición de cualquiera que quier...
Hoy me ha surgido una duda viendo una pregunta que encaja perfectamente a una respuesta que di hace bastante tiempo a una pregunta similar aunque, cuando la he ido a buscar para marcarla como duplicada, no la he podido encontrar de ninguna manera, por lo que he pensado que igual podría ser que la...
@IsraelGonzález dos métodos para esto se me ocurren: Object.keys() para obtener un iterable de las propiedades, y Object.hasOwnProperty() para verificar una propiedad en un objeto
Aunque no me quedó claro si el resultado que querías es sólo la lista de las claves (propiedades) en ambos objetos, o un objeto directamente con esas propiedades y unos valores. En lo que acabo de poner sería lo segundo, y los valores los toma de b
Acabo de mirar un poco si JS tenía conjuntos, para hacerlo más "estilo python", y aunque los tiene no me sirven porque no implementa la intersección. Así que al final lo hice con un mero bucle similar al tuyo
sólo que en vez de ir imprimiendo los elementos comunes, los va guardando en otro objeto "resultado"
no acabo de entender qué resultado buscas. Tienes que tener de nuevo las variables a y b, pero modificadas para eliminar los elementos que no estén en la otra?
En general no es buena idea hacer delete str1[element] mientras estás iterando por str1, pues eso puede alterar su longitud... pero en este caso ya que primero está Object.keys() supongo que no hay problema (pues la longitud de la lista devuelta por Object.keys() es la que corresponde al objeto inicial y supongo que no cambie aunque luego vayas eliminando elementos). No sé cómo se comporta JS en esto, pero en Python se desaconseja