{"ScriptPreparationCode":"var data = _.range(10000).map(function(i) {\r\n return {\r\n counter: i\r\n }\r\n});\r\n\r\nfunction isOdd(num) {\r\n return num % 2 === 1;\r\n}\r\n\r\nfunction square(num) {\r\n return num * num;\r\n}\r\n\r\nfunction lessThanThreeDigits(num) {\r\n return num.toString().length \u003C 3;\r\n}\r\n\r\nvar MyObject = {\r\n description: \u0027Creates a deep copy of source, which should be an object or an array.\u0027,\r\n myNumber: 123456789,\r\n myBoolean: true,\r\n jayson: {\r\n stringify: \u0027JSON.stringify() method converts a JavaScript value to a JSON string....\u0027,\r\n parse: \u0027JSON.parse() method parses a JSON string...\u0027\r\n },\r\n array: [\r\n {\r\n stringify: \u0027one string....\u0027,\r\n parse: \u0027two string...\u0027\r\n },\r\n {\r\n stringify: \u0027three string....\u0027,\r\n parse: \u0027four string...\u0027\r\n },\r\n {\r\n stringify: \u0027five string....\u0027,\r\n parse: \u0027six string...\u0027\r\n },\r\n ]\r\n};\r\n\r\nvar myCopy = null;\r\n\r\nvar arr = new Array(Number.MAX_SAVE_INTEGER).fill(null);\r\n\r\nvar numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30];\r\nvar isOddTwo = n =\u003E n % 2 === 1;","TestCases":[{"Name":"Ramda (NO Curry)","Code":"var result = R.filter(\r\n lessThanThreeDigits,\r\n R.map(\r\n square,\r\n R.filter(\r\n isOdd,\r\n R.pluck(\u0027counter\u0027, data),\r\n ),\r\n ),\r\n);\r\n\r\nmyCopy = R.clone(MyObject);\r\n \r\nR.map(x =\u003E x * 10, arr);\r\n \r\nR.pipe(R.map(R.inc), R.filter(isOddTwo), R.take(5), R.last);","IsDeferred":false},{"Name":"Ramda (Curry)","Code":"var result = R.pipe(\r\n R.pluck(\u0027counter\u0027),\r\n R.filter(isOdd),\r\n R.map(square),\r\n R.filter(lessThanThreeDigits)\r\n)(data);","IsDeferred":false},{"Name":"JavaScript","Code":"var result = data\r\n\t.map(x =\u003E x.counter)\r\n\t.filter(isOdd)\r\n\t.map(square)\r\n\t.filter(lessThanThreeDigits)\r\n;\r\n\r\nmyCopy = JSON.parse(JSON.stringify(MyObject));\r\n\r\narr.map(x =\u003E x * 10);","IsDeferred":false},{"Name":"Lodash","Code":"var result = _.chain(data)\r\n .pick(\u0027counter\u0027)\r\n .filter(isOdd)\r\n .map(square)\r\n .filter(lessThanThreeDigits)\r\n .value();\r\n\r\nmyCopy = _.cloneDeep(MyObject);\r\n\r\n_.map(arr, x =\u003E x * 10);\r\n\r\n_.flow(_.map(x =\u003E x \u002B 1), _.filter(isOdd), _.take(5), _.last);","IsDeferred":false}]}