ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
29 lines (25 loc) • 725 B
JavaScript
;
var native = require('./internals/native.js');
var isArray = require('./isArray.js');
var isArrayLikeObject = require('./isArrayLikeObject.js');
function unzip(array) {
if (!isArray(array) || array.length === 0) {
return [];
}
var length = 0;
array = array.filter(function (group) {
if (isArrayLikeObject(group)) {
length = native.mathMax(group.length, length);
return true;
}
return false;
});
var result = Array(length);
var index = -1;
while (++index < length) {
var item = array.map(function (group) { return group[index]; });
result[index] = item;
}
return result;
}
module.exports = unzip;