Estoy tratando de destruir la función para obtener los datos de retorno y almacenarlos en Array
id: data.id, title: data.title, otherDetails:[ { name:"dummy name", fields: "testing", production: "not yet", }, { add:"New York", core: "mech", position: "junior", }, ...arrayObj(data); ]así que estoy obteniendo la salida como
id: data.id, title: data.title, otherDetails:[ { name:"dummy name", fields: "testing", production: "not yet", }, { add:"New York", core: "mech", position: "junior", }, null, { user_id: "testing@user.com", user_name: "firstname", }, null, { userschema: "personal", access: "yes", } { nominie: "testing", age: "18" } ]¿Hay alguna forma posible cuando destruyo los datos, el valor nulo se elimina? Sé que estoy devolviendo el valor nulo, pero quiero eliminar el valor nulo cuando estoy destruyendo los datos.
3 métodos vienen a la mente
1. Filtrado de valores no nulos de la matriz devuelta en arrayObj(data)
const data = { id: 'data ID', title: 'data Title', d: [ null, { user_id: "testing@user.com", user_name: "firstname", }, null, { userschema: "personal", access: "yes", }, { nominie: "testing", age: "18" }] } const arrayObj = (data) => { return data.d } const a = { id: data.id, title: data.title, otherDetails:[ { name:"dummy name", fields: "testing", production: "not yet", }, { add:"New York", core: "mech", position: "junior", }, ...arrayObj(data).filter((el) => el!==null) ] } console.log(a) 2. Devolver los valores no nulos filtrados de arrayObj(data)
const data = { id: 'data ID', title: 'data Title', d: [ null, { user_id: "testing@user.com", user_name: "firstname", }, null, { userschema: "personal", access: "yes", }, { nominie: "testing", age: "18" }] } const arrayObj = (data) => { return data.d.filter((el) => el!==null) } const a = { id: data.id, title: data.title, otherDetails:[ { name:"dummy name", fields: "testing", production: "not yet", }, { add:"New York", core: "mech", position: "junior", }, ...arrayObj(data) ] } console.log(a) 3. Filtrado de valores no nulos de otherDetails . Esto también eliminará los correos null que no provienen de arrayObj pero que inicialmente estaban presentes en otherDetails
const data = { id: 'data ID', title: 'data Title', d: [ null, { user_id: "testing@user.com", user_name: "firstname", }, null, { userschema: "personal", access: "yes", }, { nominie: "testing", age: "18" }] } const arrayObj = (data) => { return data.d } const a = { id: data.id, title: data.title, otherDetails:[ { name:"dummy name", fields: "testing", production: "not yet", }, null, { add:"New York", core: "mech", position: "junior", }, ...arrayObj(data) ].filter((el) => el !== null) } console.log(a)