Aquí está mi objeto:
const arr = [ { name: 'Breaking Bad S01E07' }, { name: 'Breaking Bad S01E06' }, { name: 'Dexter S01E05' }, { name: 'Dexter S01E02' }, { name: 'Dexter S01E07' }, ];Quiero extraer solo valores y usé Object.values pero no cambia.
Aquí está mi código:
val = Object.values(arr); console.log(val);Pero lo que obtengo es exactamente lo mismo sin Object.values. No devuelve valores. Devuelvo claves + valores.
Utilicé el mapa porque es una matriz de objetos, ¡pero devuelve indefinido!
const map = arr.map((x) => { Object.values(x); }); console.log(map);esto es lo que obtengo:
[ undefined, undefined, undefined, undefined, undefined ]Deberá mapear y luego desestructurar el name de cada objeto.
const arr = [ { name: 'Breaking Bad S01E07' }, { name: 'Breaking Bad S01E06' }, { name: 'Dexter S01E05' }, { name: 'Dexter S01E02' }, { name: 'Dexter S01E07' }, ]; const values = arr.map(({ name }) => name); console.log(values);Si desea todos los valores sin sus claves, puede intentar reducir los valores.
const arr = [ { name: 'Breaking Bad S01E07' }, { name: 'Breaking Bad S01E06' }, { name: 'Dexter S01E05' }, { name: 'Dexter S01E02' }, { name: 'Dexter S01E07' }, ]; const values = arr.reduce((acc, obj) => [...acc, ...Object.values(obj)], []); console.log(values);La función map siempre debe devolver un valor.
Puede cambiar su función de mapa de esta manera.
const map = arr.map((x) => Object.values(x)); console.log(map);No está devolviendo nada de la función de devolución de llamada del map , por lo tanto, llena la matriz resultante con undefined
const arr = [ { name: 'Breaking Bad S01E07' }, { name: 'Breaking Bad S01E06' }, { name: 'Dexter S01E05' }, { name: 'Dexter S01E02' }, { name: 'Dexter S01E07' }, ]; // Using object.values const val = arr.map(item => Object.values(item)[0]); // OR Accessing value directly const values = arr.map(item => item.name) console.log(values, val);