const data=[{ "name": "Andrew", "age": "23", "subject": [{ "name": "english", "period": "1st" }] }, { "name": "karthick", "age": "29", "subject": [{ "name": "French", "period": "3st" }] }]Necesito consolar solo el valor del nombre en una matriz e imprimir en la consola Ejemplo: ["Andrew","inglés","karthick","Francés"]
Usando Array#flatMap y Array#map :
const data = [ { "name": "Andrew", "age": "23", "subject": [ { "name": "english", "period": "1st" } ] }, { "name": "karthick", "age": "29", "subject": [ { "name": "French", "period": "3st" } ] } ]; const res = data.flatMap(({ name, subject = [] }) => ([ name, ...subject.map(({ name }) => name) ])); console.log(res);Según su conjunto de datos de ejemplo, no tiene que hacer nada complicado aquí. Recorra los datos y luego inserte el nombre y el nombre del sujeto en una nueva matriz.
const data=[{name:"Andrew",age:"23",subject:[{name:"english",period:"1st"}]},{name:"karthick",age:"29",subject:[{name:"French",period:"3st"}]}]; const arr = []; for (const obj of data) { arr.push(obj.name); arr.push(obj.subject[0].name); } console.log(arr);