¿Cómo ordenar el valor más alto en estos datos usando javascript?
data = [{a: [{num:31}, {num:10}]},{a: [{num:4}, {num:9}]},{a: [{num:5}, {num:9}]}]Esperado
data = [{a: [{num:31}]},{a: [{num:9}]},{a: [{num:9}]}]Intento así pero nunca sucede :)
const data_sort = data.sort((a, b) => { let abc if (aalength > 0) { abc = aasort((x, y) => xa - xa); } return a - b }) let data = [{a: [{num:31}, {num:10}]},{a: [{num:4}, {num:9}]},{a: [{num:5}, {num:9}]}] data = data.map(item => ({a:[item.a.sort((a, b) => b.num-a.num)[0]]})).sort((a, b) => ba[0].num-aa[0].num) console.log(data)Suponiendo que esta sea la sintaxis correcta, todo lo que necesita es map cada elemento de la matriz a su elemento más grande y luego sort .
var data = [{ a: [{num:31}, {num:10}] }, { a: [{num:4}, {num:9}] }, { a: [{num:6}, {num:11}] }, { a: [{num:5}, {num:9}] }]; var result = data.map(function(item) { return { a: [item.a.sort(function(a,b) { return a.num - b.num }).reverse()[0]] }; }).sort(function(a, b) { return aa[0].num - ba[0].num }).reverse(); console.log(result) .as-console-wrapper { max-height: 100% !important; }Mapear y Reducir
const data = [{ a: [{ num: 31 }, { num: 10 }] }, { a: [{ num: 4 }, { num: 9 }] }, { a: [{ num: 5 }, { num: 9 }] }]; data.map((value) => { value.a = [ { num: value.a.reduce((accumulatedValue, currentValue) => { return Math.max(accumulatedValue.num, currentValue.num); }), }, ]; return value; }); console.log(data)