UNPKG

660 BJavaScriptView Raw
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;