5

I would like to see an example of _.zip.apply using underscore.js.

In the underscore documentation is written:

If you're working with a matrix of nested arrays, zip.apply can transpose the matrix in a similar fashion.

However, the documentation provides no example.

user3335966
  • 2,673
  • 4
  • 30
  • 33
antonjs
  • 14,060
  • 14
  • 65
  • 91

2 Answers2

11

It's your standard use of apply:

_.zip.apply(null, [ ['foo','bar'], [0,1] ])

This would result in the following:

[['foo', 0], ['bar', 1]]
Sampson
  • 265,109
  • 74
  • 539
  • 565
0

You can use also a 'non-external-library' method:

Create this function:

function transpose(arr) {
        return Object.keys(arr[0]).map(function (c) {
            return arr.map(function (r) {
                return r[c];
            });
        });
    }

and then:

var transposedArray = transpose(originalArray);

Pedro Justo
  • 3,969
  • 1
  • 17
  • 21