Buenas tardes, estoy haciendo un pequeño ejercicio y tengo un problema, les expondré:
var elements = [ { name: 'Banana', price: 200, qty: 31, imported: true, size: [12, 40, 60], type: null }, { name: 'Pomelo', price: 55, qty: 325, imported: false, size: [5, 50, 55, 79], type: '-' } ];Obtener un resultado como este en la consola
for(let i=0; i<elements.length;i++) { console.log("***" + elements[i].name + "***"); console.log("size:"+ elements[i].size); }Tengo este código y funciona, pero en el segundo archivo console.log, ¿cómo puedo sacar la clave de la matriz sin tener que escribir "tamaño" manualmente?
¡¡Gracias!!
Puede usar Object.keys para acceder a las claves de un objeto.
var elements = [ { name: 'Banana', price: 200, qty: 31, imported: true, size: [12, 40, 60], type: null }, { name: 'Pomelo', price: 55, qty: 325, imported: false, size: [5, 50, 55, 79], type: '-' } ]; elements.forEach((element) => { Object.keys(element).forEach((key) => { console.log(`Key: ${key}`); console.log(`Value: ${element[key]}`); }) })¿Es esto útil para ti?
var elements = [ { name: 'Banana', price: 200, qty: 31, imported: true, size: [12, 40, 60], type: null }, { name: 'Pomelo', price: 55, qty: 325, imported: false, size: [5, 50, 55, 79], type: '-' }] elements.forEach(x => { console.log("***" + x.name + "***"); console.log("size :", x.size.join(",")); })Puede obtener la clave de tamaño de esta manera:
for(let i=0; i<elements.length;i++) { console.log("***" + elements[i].name + "***"); console.log(Object.keys(elements)[4] + ":" + elements[i].size); }Pero esto funcionará cuando la clave de tamaño esté siempre en el cuarto índice como lo está en su objeto de elementos.