Javascript 如何从具有最大值的嵌套JSON数组对象中获取元素
我想要类别1最大值157。我可以通过使用for或forEach来实现这一点。但是,有谁能指导我如何使用ES6实现这一点 我还需要完整的对象,这样我也可以使用其他字段。到期日Javascript 如何从具有最大值的嵌套JSON数组对象中获取元素,javascript,arrays,json,ecmascript-6,Javascript,Arrays,Json,Ecmascript 6,我想要类别1最大值157。我可以通过使用for或forEach来实现这一点。但是,有谁能指导我如何使用ES6实现这一点 我还需要完整的对象,这样我也可以使用其他字段。到期日 { "data": [ { "expiry": "2020-01-01T00:00:00", "rates": [
{
"data": [
{
"expiry": "2020-01-01T00:00:00",
"rates": [
{
"name": "Category 1",
"amount": 57
},
{
"name": "Category 2",
"amount": 55
}
]
},
{
"expiry": "2020-01-01T00:00:00",
"rates": [
{
"name": "Category 1",
"amount": 157
},
{
"name": "Category 2",
"amount": 25
}
]
},
{
"expiry": "2020-01-01T00:00:00",
"rates": [
{
"name": "Category 1",
"amount": 27
},
{
"name": "Category 2",
"amount": 45
}
]
},
]
};
试试这个:
var jsonObj={
“数据”:[{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:57
},
{
“名称”:“第2类”,
“数额”:55
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:157
},
{
“名称”:“第2类”,
“金额”:25
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“金额”:27
},
{
“名称”:“第2类”,
“金额”:45
}
]
}
]
};
var-arr=[];
for(jsonObj.data的变量i){
arr.push(即rates.find((obj)=>obj.name==='Category 1');
}
var maxValue=Math.max.apply(Math,arr.map(函数(obj){return obj.amount;}));
console.log(最大值);//157
试试这个:
var jsonObj={
“数据”:[{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:57
},
{
“名称”:“第2类”,
“数额”:55
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:157
},
{
“名称”:“第2类”,
“金额”:25
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“金额”:27
},
{
“名称”:“第2类”,
“金额”:45
}
]
}
]
};
var-arr=[];
for(jsonObj.data的变量i){
arr.push(即rates.find((obj)=>obj.name==='Category 1');
}
var maxValue=Math.max.apply(Math,arr.map(函数(obj){return obj.amount;}));
console.log(最大值);//157
试试看
var jsonData={
“数据”:[{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:57
},
{
“名称”:“第2类”,
“数额”:55
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:157
},
{
“名称”:“第2类”,
“金额”:25
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“金额”:27
},
{
“名称”:“第2类”,
“金额”:45
}
]
}
]
};
var vAllAmountForCategory1=[];
对于(i=0;i log(“类别1”的最大金额为:“+vValueAmountSortingInDesc[0])代码>试试看
var jsonData={
“数据”:[{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:57
},
{
“名称”:“第2类”,
“数额”:55
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“数额”:157
},
{
“名称”:“第2类”,
“金额”:25
}
]
},
{
“到期日”:“2020-01-01T00:00:00”,
“费率”:[{
“名称”:“第1类”,
“金额”:27
},
{
“名称”:“第2类”,
“金额”:45
}
]
}
]
};
var vAllAmountForCategory1=[];
对于(i=0;i log(“类别1”的最大金额为:“+vValueAmountSortingInDesc[0])代码>我可以使用for循环做同样的事情,但是我想使用es6-es10。谢谢你的回复。我不想用for循环。我可以用for循环做同样的事情,但是我想用es6-es10。谢谢你的回复。我不想用for循环。我可以用for循环做同样的事情,但是我想用es6-es10。谢谢你的回复。我不想用for循环。我可以用for循环做同样的事情,但是我想用es6-es10。谢谢你的回复。我不想用for循环。