diff --git a/underscore/underscore-tests.ts b/underscore/underscore-tests.ts index 26718207d8..fd335b7361 100644 --- a/underscore/underscore-tests.ts +++ b/underscore/underscore-tests.ts @@ -505,6 +505,12 @@ function chain_tests() { var firstVal: number = _.chain([1, 2, 3]) .first() .value(); + + let numberObjects = [{property: 'odd', value: 1}, {property: 'even', value: 2}, {property: 'even', value: 0}]; + let evenAndOddGroupedNumbers = _.chain(numberObjects) + .groupBy('property') + .mapObject((objects: any) => _.pluck(objects, 'value')) + .value(); // { odd: [1], even: [0, 2] } } var obj: { [k: string] : number } = { diff --git a/underscore/underscore.d.ts b/underscore/underscore.d.ts index 708d7a34d6..cb5dfaa393 100644 --- a/underscore/underscore.d.ts +++ b/underscore/underscore.d.ts @@ -5924,6 +5924,7 @@ interface _ChainSingle { } interface _ChainOfArrays extends _Chain { flatten(shallow?: boolean): _Chain; + mapObject(fn: _.ListIterator): _ChainOfArrays; } declare var _: UnderscoreStatic;