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

243
Vistas
Reduce javascript list of lists to a dictionary of lists

Similar to List of Lists to Dictionary of Lists

Would like to reduce a list of lists to a dictionary of lists For example

list_list = [['example', 55], ['example', 66] , ['example2', 44]]

would become

dict = {'example': [55,66], 'example2': [44]}
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Seems to have do some handson, thats why answering this.

Array.reduce and array destructuring will help you.

Please see the code comment for logic

const list_list = [['example', 55], ['example', 66] , ['example2', 44]];
//Destructuring the current value in the reduce function into [key, value]
const dict = list_list.reduce((acc, [key, value]) => {
  // If a node with the current key exist in the accumulator, merge the value of that node with current value
  // If node with current key doesnot exist, create a new node with that key and value as an array with current value being the element
  acc[key] = acc[key] ? [...acc[key], value] : [value];
  return acc;
}, {});
console.log(dict);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Here comes another variant of how the reducer function could be implemented. It tries to be more readable and also features a comment for each of the 3 steps which have to be taken with every reduce cycle.

Documentation links:

  • Array destructuring

  • Array.prototype.reduce

  • Array.prototype.push

  • ??= The logical nullish assignment operator

const list_list = [['example', 55], ['example', 66] , ['example2', 44]];

console.log(
  list_list

  //.reduce((result, item) => {
  //  // array destructuring of the currently processed array item.
  //  const [key, value] = item;

    // array destructuring within the reducer function's head.
    .reduce((result, [key, value]) => {

      // create and/or access the property list
      // identified by the array item's `key`.
      const groupList = (result[key] ??= []);

      // push the array item's `value`
      // into the above accessed list.
      groupList.push(value);

      // return the mutated `result` ... (the
      // stepwise aggregated final return value).
      return result;

    }, {}) // pass the final result's initial state as 2nd argument.
)

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