Array of Objects Map
JS
S
JavaScriptCalling map over an array of objects
1const sizedData = this.cloudsWordSizer(data);
2this.results = sizedData;
3
4cloudsWordSizer(data: Word[]): Word[] {
5 const minSize = 0.5;
6 const maxSize = 1.5;
7 const maxTag = Math.max.apply(Math, data.map((tag) => tag.count));
8 const minTag = Math.min.apply(Math, data.map((tag) => tag.count));
9 // Linearize
10 return (data.map<any>((tag: Word) => {
11 const tagCopy = { ...{}, ...tag };
12 // basic conditions
13 if (tag.count === maxTag) {
14 tagCopy.size = maxSize;
15 } else if (tag.count === minTag) {
16 tagCopy.size = minSize;
17 } else {
18 tagCopy.size = (tag.count * minSize) / minTag;
19 }
20 return tagCopy;
21 }));
22}Created on 7/13/2018