Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

221
Vistas
Agregar nuevas claves y cambiar valores en el bucle for/if

Mi objetivo actual es tomar elementos en una matriz de números enteros y crear un valor de par de claves en función de cuántas veces apareció la clave en números enteros. Mi lógica es: para i en números enteros, si i ya está en números enteros 2, incremente el valor de esa clave en 1. Si no existe, cree la clave y emparéjela con un valor de 1. Han pasado algunas horas ahora y después de buscar mucho en Google, parece que no puedo encontrar dónde estoy arruinando mi lógica.

 //require realdine-sync module var readlineSync = require('readline-sync'); //initialize variable and list var integer; integers2 = {}; var integers = []; //user input integer = readlineSync.question('Integer?: ') //check user input and append any integer besides 0 while (integer != 0 && integer >= 1 && integer <= 100){ console.log("not 0!") integers.push(integer) integer = readlineSync.question('Integer?: ') } console.log(integers); for(i in integers){if (i in integers2){integers2[i] += 1}else{integers2[i] = 1} } console.log(integers2)
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

 let integers2 = {} integers = [5, 4, 5, 2, 4, 7, 5]; // you were using 'in' instead 'of', 'in': gives you index , 'of'?: gives you value of array for (let i of integers) { if (integers2[i]) { // if key exist increment value by one integers2[i] += 1 } else { // else add 1 as the first value integers2[i] = 1 } } console.log(integers2);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Esta es una solución que puede probar y que funciona. Utiliza la misma lógica que describiste en la pregunta. Esta solución usa Array.prototype.reduce() con Map() .

 const howMany = arr => arr .reduce( (map, n) => map.set(n, (map.get(n) ?? 0) + 1), new Map() ) console.log([...howMany([3, 4, 6, 4, 5, 5, 5])])

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda