{"ScriptPreparationCode":" var fp = _.noConflict();\r\n \r\n var arr = [\r\n {\r\n type: \u0027foo\u0027,\r\n name: \u0027foo\u0027\r\n },\r\n {\r\n type: \u0027bar\u0027,\r\n name: \u0027bar\u0027\r\n },\r\n {\r\n type: \u0027foo\u0027,\r\n name: \u0027a\u0027\r\n },\r\n {\r\n type: \u0027bar\u0027,\r\n name: \u0027b\u0027\r\n },\r\n {\r\n type: \u0027foo\u0027,\r\n name: \u0027c\u0027\r\n },\r\n {\r\n type: \u0027cat\u0027,\r\n name: \u0027cat\u0027\r\n },\r\n {\r\n type: \u0027foo\u0027,\r\n name: \u0027foo\u0027\r\n },\r\n {\r\n type: \u0027bar\u0027,\r\n name: \u0027uuu\u0027\r\n },\r\n {\r\n type: \u0027bar\u0027,\r\n name: \u0027tttt\u0027\r\n },\r\n {\r\n type: \u0027nothing\u0027,\r\n name: \u0027foo\u0027\r\n },\r\n {\r\n type: \u0027foo\u0027,\r\n name: \u0027x\u0027\r\n }\r\n ];\r\n\r\nvar _mapFn = (item) =\u003E Object.assign({}, {name: item.name.toUpperCase()});\r\nvar _filterFn = (item) =\u003E item.type === \u0027foo\u0027;","TestCases":[{"Name":"Lodash Vanilla","Code":"const result = _.filter(_.map(arr, _mapFn), _filterFn);","IsDeferred":false},{"Name":"Lodash FP","Code":"const result = fp.flow(fp.map(_mapFn), fp.filter(_filterFn))(arr);","IsDeferred":false},{"Name":"Lodash Vanilla (Chained)","Code":"const result = _(arr).map(_mapFn).filter(_filterFn).value();","IsDeferred":false}]}