en reactjs estoy tratando de esto, supongamos que mi lista de arreglos es algo como esto, quiero obtener el precio mínimo de esta lista ... supongamos que el 'totalll': 100 ¿cómo puedo hacer eso? Por favor, hágamelo saber. matriz->objeto->matriz->totalll
const data = [ { name: "test", lab_partners: [ { id: 0, totalll: 5000, }, { id: 1, totalll: 200, }, { id: 2, totalll: 1000, }, ], }, { name: "test", lab_partners: [ { id: 0, totalll: 7000, }, { id: 1, totalll: 100, }, { id: 2, totalll: 800, }, ], }, ]; const minTotalByName = (data, id) => { const totals = data.filter((x) => x.lab_partners.find((y) => y.id === id)); return Math.min(...totals); }; const min = minTotalByName(data); console.log(min, "min");const totals = data .map((d) => d.lab_partners) .flat() .map((p) => p.totalll); const minTotal = Math.min(...totals); y terminará con 100 en minTotal .
Si necesita el objeto completo con el total más totalll , las cosas se complican un poco más, pero podemos (por una vez con buena conciencia) usar .reduce :
const lowestPartner = data .map((d) => d.lab_partners) .flat() .reduce( (currentMin, obj) => !currentMin || obj.totalll < currentMin.totalll ? obj : currentMin, null, ); // {id: 1, totalll: 100}