Estoy tratando de obtener solo 2 propiedades de los objetos de matriz.
Esta es mi matriz:
[ 0: {_id: '621723ddc1f73de5f7e4dcb9', label: 'new 22', slug: 'new-22', vendor: 'admin', options: Array(1)} 1: {_id: '6217272ec1f73de5f7e4dcba', label: 'new 33', slug: 'new-33', vendor: 'admin', options: Array(1)} ]Estoy tratando de obtener solo la etiqueta y el slug, mi expectativa es:
[ 0: {label: 'new 22', slug: 'new-22'} 1: {label: 'new 33', slug: 'new-33'} ]Lo he intentado de esta manera: pero está devolviendo objetos de matriz completa
let tempArray; for (let i = 0; i < data.length; i += 2) { tempArray = data.slice(data[i], data[i + 2]); } setAttributeLabel(tempArray);Puede usar Array.prototype.map para filtrar las propiedades requeridas.
const array = [{_id: '621723ddc1f73de5f7e4dcb9', label: 'new 22', slug: 'new-22', vendor: 'admin', options: Array(1)}, {_id: '6217272ec1f73de5f7e4dcba', label: 'new 33', slug: 'new-33', vendor: 'admin', options: Array(1)}]; const newArray = array.map(({label, slug}) => ({label, slug})); console.log(newArray);Simplemente itere la matriz y cree un nuevo objeto de las propiedades requeridas y presione la matriz temporal
const data = [{ _id: '621723ddc1f73de5f7e4dcb9', label: 'new 22', slug: 'new-22', vendor: 'admin' }, { _id: '6217272ec1f73de5f7e4dcba', label: 'new 33', slug: 'new-33', vendor: 'admin' } ] let tempArray = []; for (let i = 0; i < data.length; i++) { tempArray.push({ label: data[i].label, slug: data[i].slug }) } console.log(tempArray);Puede usar Array.map para crear una nueva matriz. Para cada elemento mapeado, crea un nuevo objeto que contiene solo las propiedades que necesita:
arr.map(a => { return { label: a.label, slug: a.slug } } );