[英]underscore js groupby array inside JSON
我已經分配了一個任務,以使用下划線js對angular js中的數據進行分組。
我的JSON:
$scope.myData= {
"buslist":
{
"code":"1",
"message":"Success",
"fromStationCode":"71",
"searchResult": [
{
"arrivalTime": "17:00:00",
"availableSeats": "42",
"boardingPointDetails": [
{
"code": "1631",
"name": "Koyambedu",
"time": "09:30:00"
},
{
"code": "961296",
"name": "Nerkundram",
"time": "09:45:00"
}
]
},
{
"arrivalTime": "18:00:00",
"availableSeats": "32",
"boardingPointDetails": [
{
"code": "2084",
"name": "Adyar",
"time": "09:30:00"
},
{
"code": "961296",
"name": "Madurai",
"time": "09:45:00"
}
]
}
]
}
}
我無法使用下划線js使用“名稱”字段對數據進行分組。 我試過了 :
$scope.groups = _.groupBy($scope.myData,function(element) {
return element.searchResult.boardingPointDetails.name;
});
但是失敗了。 需要幫忙。 提前致謝。
這是我為您解決的問題:
var tempResult = [];
_.each($scope.myData.buslist.searchResult, function(result) {
_.each(result.boardingPointDetails, function(detail) {
var item = { name: detail.name, availableSeats: result.availableSeats };
tempResult.push(item); // make an array of items with needed data on same nesting level
});
});
var endResult = _.groupBy(tempResult, 'name'); // group the items by name
看到它適合您的情況: JsFiddle
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.