generate-words-freqmap
Version:
Generate frequency map from array of strings.
17 lines (12 loc) • 543 B
text/typescript
import { freqMapType } from 'fullfiller-common/src/types';
import { freqMapWordAsKeyType } from './common/types';
/** **freqMapWeightAsKey** example: `{ 1: ['foo', 'bar'], 3: ['baz'] }` */
function generateFreqMapWeightAsKey(
freqMapWordAsKey: freqMapWordAsKeyType
): freqMapType {
return Object.keys(freqMapWordAsKey).reduce((freqMap, word) => {
const weight = freqMapWordAsKey[word];
return { ...freqMap, [weight]: (freqMap[weight] || []).concat(word) };
}, {} as freqMapType);
}
export default generateFreqMapWeightAsKey;