var rs = [];
var datas = [{ a: 1, b: 11, c: 111 }, { a: 1, b: 11, c: 222 }, { a: 1, b: 22, c: 333 }, { a: 2, b: 33, c: 111 }, { a: 2, b: 44, c: 222 }];
var groupA = _(datas).groupBy(function (data) {
return data.a;
});
for (var field in groupA) {
var obj = { n: field, s: [] }
var groupB = _(groupA[field]).groupBy(function (data) {
return data.b;
});
for (var field2 in groupB) {
obj.s.push({
n: field2, s: _(groupB[field2]).map(function (data) {
return {n:data.c}
})
});
}
rs.push(obj);
}
console.log(rs)
var datas = [{ a: 1, b: 11, c: 111 }, { a: 1, b: 11, c: 222 }, { a: 1, b: 22, c: 333 }, { a: 2, b: 33, c: 111 }, { a: 2, b: 44, c: 222 }];
var groupA = _(datas).groupBy(function (data) {
return data.a;
});
for (var field in groupA) {
var obj = { n: field, s: [] }
var groupB = _(groupA[field]).groupBy(function (data) {
return data.b;
});
for (var field2 in groupB) {
obj.s.push({
n: field2, s: _(groupB[field2]).map(function (data) {
return {n:data.c}
})
});
}
rs.push(obj);
}
console.log(rs)