Considere el siguiente ejemplo:
const obj ={ price:[{multiple items},{multiple items}], name:"", id:"", }Quiero solicitar foreach en la propiedad de precio, pero el problema es que el nombre de la propiedad está cambiando en casos como saleprice, taxprice, etc.
si estoy usando el método obj.keys(), no funciona porque devuelve la clave como una cadena.
Puedes probar esto:
const obj = { price: [10, 20, 30], name: "", id: "", }; const pricePropertyName = Object.keys(obj).find((prop) => prop.includes('price')); if (pricePropertyName) { obj[pricePropertyName].forEach(el => { console.log(el); }); }const key = Object.keys(obj).find((key) => key.indexOf('price') > -1) obj[key].forEach(price => console.log(price))Puede usar "Object.values()" u "Object.fromEntries()" para obtener los valores o ambas claves y valores.
const obj ={ price:[{multiple items},{multiple items}], name:"", id:"", } const priceArray = Object.values(obj).find( value => Array.isArray(value))para su información
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values