12345678910111213141516171819202122232425262728 |
- var max = require('./max');
- var map = require('./map');
- function getLength(arr) {
- return arr == null ? 0 : arr.length;
- }
- /**
- * Merges together the values of each of the arrays with the values at the
- * corresponding position.
- */
- function zip(arr){
- var len = arr ? max(map(arguments, getLength)) : 0,
- results = [],
- i = -1;
- while (++i < len) {
- // jshint loopfunc: true
- results.push(map(arguments, function(item) {
- return item == null ? undefined : item[i];
- }));
- }
- return results;
- }
- module.exports = zip;
|