UNPKG

bower

Version:

The browser package manager

29 lines (25 loc) 673 B
define(['../lang/isFunction'], function (isFunction) { /** * Creates an object that holds a lookup for the objects in the array. */ function toLookup(arr, key) { var result = {}; if (arr == null) { return result; } var i = -1, len = arr.length, value; if (isFunction(key)) { while (++i < len) { value = arr[i]; result[key(value)] = value; } } else { while (++i < len) { value = arr[i]; result[value[key]] = value; } } return result; } return toLookup; });