{"ScriptPreparationCode":"const data = Array.from({ length: 1_000_000 }, (_, i) =\u003E ({ value: i % 100 }));\r\n\r\nfunction nativeMeanBy(array, key) {\r\n const sum = array.reduce((acc, obj) =\u003E acc \u002B obj[key], 0);\r\n return sum / array.length;\r\n}\r\n\r\nfunction lodashMeanBy(array, key) {\r\n return _.meanBy(array, key);\r\n}\r\n\r\nfunction forLoopMeanBy(array, key) {\r\n let sum = 0;\r\n for (let i = 0; i \u003C array.length; i\u002B\u002B) {\r\n sum \u002B= array[i][key];\r\n }\r\n return sum / array.length;\r\n}\r\n\r\nfunction forOfMeanBy(array, key) {\r\n let sum = 0;\r\n for (const obj of array) {\r\n sum \u002B= obj[key];\r\n }\r\n return sum / array.length;\r\n}\r\n\r\nfunction whileMeanBy(array, key) {\r\n let sum = 0;\r\n let i = 0;\r\n const len = array.length;\r\n while (i \u003C len) {\r\n sum \u002B= array[i\u002B\u002B][key];\r\n }\r\n return sum / len;\r\n}\r\n\r\nfunction forEachMeanBy(array, key) {\r\n let sum = 0;\r\n array.forEach(obj =\u003E sum \u002B= obj[key]);\r\n return sum / array.length;\r\n}\r\n","TestCases":[{"Name":"Native","Code":"nativeMeanBy(data, \u0027value\u0027)","IsDeferred":false},{"Name":"Lodash","Code":"lodashMeanBy(data, \u0027value\u0027)","IsDeferred":false},{"Name":"forLoopMeanBy","Code":"forLoopMeanBy(data, \u0027value\u0027)","IsDeferred":false},{"Name":"forOfMeanBy","Code":"forOfMeanBy(data, \u0027value\u0027)","IsDeferred":false},{"Name":"whileMeanBy","Code":"whileMeanBy(data, \u0027value\u0027)","IsDeferred":false},{"Name":"forEachMeanBy","Code":"forEachMeanBy(data, \u0027value\u0027)","IsDeferred":false}]}