En este artículo, aprenderemos cómo convertir una array bidimensional en un objeto . Una array bidimensional puede tener cualquier número de filas y dos columnas.
Ejemplo:
Input: [ ["John", 12], ["Jack", 13], ["Matt", 14], ["Maxx", 15] ] Output: { "John": 12, "Jack": 13, "Matt": 14, "Maxx": 15 }
Se pueden seguir los siguientes enfoques para resolver el problema.
Enfoque 1: en este enfoque, creamos un objeto vacío y usamos el método Array.forEach() para iterar sobre la array. En cada iteración, insertamos el primer elemento de la array secundaria en el objeto como clave y el segundo elemento como valor. Luego devuelve el objeto después de las iteraciones.
Ejemplo:
Javascript
function arr2obj(arr) { // Create an empty object let obj = {}; arr.forEach((v) => { // Extract the key and the value let key = v[0]; let value = v[1]; // Add the key and value to // the object obj[key] = value; }); // Return the object return obj; } console.log( arr2obj([ ["John", 12], ["Jack", 13], ["Matt", 14], ["Maxx", 15], ]) );
Producción:
{ Jack: 13, John: 12, Matt: 14, Maxx: 15 }
Enfoque 2: En este enfoque, usaremos el método Array.reduce() e inicializaremos el acumulador con un objeto vacío. En cada iteración, asignamos el valor actual como el valor de la clave del acumulador y devolvemos el acumulador. Luego devuelve el objeto después de las iteraciones.
Ejemplo:
Javascript
function arr2obj(arr) { return arr.reduce( (acc, curr) => { // Extract the key and the value let key = curr[0]; let value = curr[1]; // Assign key and value // to the accumulator acc[key] = value; // Return the accumulator return acc; }, // Initialize with an empty object {} ); } console.log( arr2obj([ ["Eren", "Yeager"], ["Mikasa", "Ackermann"], ["Armin", "Arlelt"], ["Levi", "Ackermann"], ]) );
Producción:
{ Eren: 'Yeager', Mikasa: 'Ackermann', Armin: 'Arlelt', Levi: 'Ackermann' }
Enfoque 3: en este enfoque, primero aplanamos el arreglo usando el método Array.flat( ) para obtener un arreglo unidimensional. Luego podemos crear un objeto vacío e iterar la array para asignar valores colocados uniformemente como la clave del objeto y valores colocados extrañamente como el valor.
Ejemplo:
Javascript
function arr2obj(arr) { // Flatten the array arr = arr.flat(); // Create an empty object let obj = {}; for (let i = 0; i < arr.length; i++) { if (i % 2 == 0) { // Extract the key and the value let key = arr[i]; let value = arr[i + 1]; // Assign the key and value obj[key] = value; } } return obj; } console.log( arr2obj([ ["Max", 19], ["Chloe", 20], ["Nathan", 22], ["Mark", 31], ]) );
Producción:
{ Max: 19, Chloe: 20, Nathan: 22, Mark: 31 }
Publicación traducida automáticamente
Artículo escrito por _saurabh_jaiswal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA