Necesito obtener una matriz de todos los valores de name de una estructura JSON.
Mi JSON se ve así:
{ "profile": { "G5j7": { "name": "siddharth", "age": "17" }, "Loj9": { "name": "ram", "age": "20" }, "Huy8": { "name": "maix" } } } Puedo obtener un valor de name específico por:
var singleName = profile.G5j7.name; Pero, ¿cómo obtengo una matriz de todos los valores de name si no conozco todas las ID dentro del profile ? Necesito almacenar en una variable.
const arrayName = Object.values(profile).map((item) => item.name);
Puede usar Object.keys para obtener todas las claves de propiedades en un objeto, con eso puede obtener acceso a todas las claves de objeto de perfil con las que puede recuperar el nombre de cada clave como se muestra a continuación
let data = { "profile": { "G5j7": { "name": "siddharth", "age": "17" }, "Loj9": { "name": "ram", "age": "20" }, "Huy8": { "name": "maix" } } }; let profiles_keys = Object.keys(data.profile); let results = profiles_keys.reduce((accumulator, current)=> { return accumulator.concat(data.profile[current].name) }, []); console.log(results);Object.values(yourObj.profile).map(v => v.name)Object.values() devuelve una matriz de valores en cada accesorio (propio) de su objeto. Para que pueda olvidarse de los nombres de las propiedades e iterar sobre sus valores