{"ScriptPreparationCode":"function getModels() {\r\n const n = 1000;\r\n return new Array(n).fill(0).map((_, i) =\u003E ({\r\n id: i,\r\n value: Math.floor(Math.random() * n)\r\n }));\r\n};","TestCases":[{"Name":"map filter","Code":"const models = getModels(); \r\nconst values = models.map((model) =\u003E model.value);\r\n\r\nmodels.forEach((model) =\u003E {\r\n const modelValue = model.value;\r\n const hasDuplicates = values.filter((value) =\u003E value === modelValue).length \u003E 1;\r\n\r\n hasDuplicates \u0026\u0026 (model.isDuplicate = true);\r\n});","IsDeferred":false},{"Name":"reduce","Code":"const models = getModels();\r\nconst valueMap = models.reduce((result, model) =\u003E (result[model.value] ? \u002B\u002Bresult[model.value] : result[model.value] = 1) \u0026\u0026 result, {})\r\n\r\nmodels.forEach((model) =\u003E {\r\n valueMap[model.value] \u003E 1 \u0026\u0026 (model.isDuplicate = true);\r\n});","IsDeferred":false},{"Name":"lodash","Code":"const byValue = _.groupBy(getModels(), (model) =\u003E model.value);\r\n\r\nObject.values(byValue).forEach((models) =\u003E {\r\n const hasDuplicates = models.length \u003E 1;\r\n\r\n hasDuplicates \u0026\u0026 models.forEach((model) =\u003E (model.isDuplicate = true));\r\n});","IsDeferred":false}]}