javascript: ¿Cómo obtengo un valor específico de todas las claves de un objeto y lo almaceno en una matriz?

CorePress2024-01-25  10

Ya estoy luchando desde hace bastante tiempo para extraer todas las etiquetas del objeto en la imagen de abajo y luego almacenarlas en una sola matriz usando JavaScript...

He estado intentando algo como esto:

for (let i = 0, len = nav_items.length; i < len; i++) {
    console.log(nav_items[i].label);
}

Pero esto solo imprime tres valores diferentes... Necesito todas las etiquetas en una matriz juntas.

El resultado ideal sería una serie de:

["Getting started", "Components", "For designers"]


------------------------------------

Puedes asignar tu matriz a una matriz con solo los valores de etiqueta de esta manera:

var onlyLabelsArr = nav_items.map(item => item.label);
console.log(onlyLabelsArr);

te dará:

["Getting started", "Components", "For designers"]

1

¡Gracias! ¡Calificaré esto como una solución una vez que el temporizador de 10 minutos lo permita!

- Adam Schwarcz

28/03/2021 a las 15:18



------------------------------------

Puedes crear una matriz e insertar esos valores en ella

let arr = []
for (let i = 0, len = nav_items.length; i < len; i++) {
    arr.push(nav_items[i].label);
}

console.log(arr)

salida

["Getting started", "Components", "For designers"]



------------------------------------

Puedes obtenert el resultado usando for...of loop también. Resultado usando Array.prototype.map y for...of looop.

const arr = [
  { label: "Getting started" },
  { label: "Components" },
  { label: "For designers" },
];

// Using Array.prototype.map
const result1 = arr.map(({ label }) => label);
console.log(result1);

// Using for...of loop
const result2 = [];
for (let obj of arr) {
  const { label } = obj;
  result2.push(label);
}
console.log(result2);

Su guía para un futuro mejor - libreflare
Su guía para un futuro mejor - libreflare