ce4c55dd1020f82f3f45f15d4fc42a9809c666e7
[platform/framework/web/crosswalk-tizen.git] /
1 var isFunction = require('../lang/isFunction');
2
3     /**
4      * Creates an object that holds a lookup for the objects in the array.
5      */
6     function toLookup(arr, key) {
7         var result = {};
8         if (arr == null) {
9             return result;
10         }
11
12         var i = -1, len = arr.length, value;
13         if (isFunction(key)) {
14             while (++i < len) {
15                 value = arr[i];
16                 result[key(value)] = value;
17             }
18         } else {
19             while (++i < len) {
20                 value = arr[i];
21                 result[value[key]] = value;
22             }
23         }
24
25         return result;
26     }
27     module.exports = toLookup;
28