Files
node-minecraft-data/lib/indexer.js
T

31 lines
892 B
JavaScript

module.exports={
buildIndexFromObject:
function(object,fieldToIndex) {
if(object===undefined)
return undefined;
return Object.keys(object).reduce(function(index,key){
index[object[key][fieldToIndex]]=object[key];
return index;
},{});
},
buildIndexFromArray:
function(array,fieldToIndex) {
if(array===undefined)
return undefined;
return array.reduce(function(index,element){
index[element[fieldToIndex]]=element;
return index;
},{});
},
buildIndexFromArrayNonUnique:
function(array,fieldToIndex) {
if(array===undefined)
return undefined;
return array.reduce(function(index,element){
if(!index[element[fieldToIndex]])
index[element[fieldToIndex]]=[];
index[element[fieldToIndex]].push(element);
return index;
},{});
}
};