1/** 2 * This base implementation of `_.zipObject` which assigns values using `assignFunc`. 3 * 4 * @private 5 * @param {Array} props The property identifiers. 6 * @param {Array} values The property values. 7 * @param {Function} assignFunc The function to assign values. 8 * @returns {Object} Returns the new object. 9 */ 10function baseZipObject(props, values, assignFunc) { 11 var index = -1, 12 length = props.length, 13 valsLength = values.length, 14 result = {}; 15 16 while (++index < length) { 17 var value = index < valsLength ? values[index] : undefined; 18 assignFunc(result, props[index], value); 19 } 20 return result; 21} 22 23module.exports = baseZipObject; 24