{"ScriptPreparationCode":"var pojo1 = {};\r\nvar pojo2 = {};\r\n\r\nvar map1 = new Map();\r\nvar map2 = new Map();\r\n\r\nfor (var i = 0; i \u003C 300; i\u002B\u002B) {\r\n var val1 = Math.round(Math.random() * 10);\r\n var val2 = Math.round(Math.random() * 10);\r\n\r\n pojo1[\u0060${i}\u0060] = val1;\r\n map1.set(\u0060${i}\u0060, val1);\r\n\r\n pojo2[\u0060${i}\u0060] = val2;\r\n map2.set(\u0060${i}\u0060, val2);\r\n}","TestCases":[{"Name":"POJO - for...in","Code":"var diff = [];\r\n\r\nfor (var key in pojo1) {\r\n if (pojo1.hasOwnProperty(key)) {\r\n if (pojo1[key] !== pojo2[key]) {\r\n diff.push(key);\r\n }\r\n }\r\n}","IsDeferred":false},{"Name":"POJO - for...of Object.entries","Code":"var diff = [];\r\n\r\nfor (var [key, val] of Object.entries(pojo1)) {\r\n if (val !== pojo2[key]) {\r\n diff.push(key);\r\n }\r\n}","IsDeferred":false},{"Name":"POJO - reduce Object.entries","Code":"var diff = Object.entries(pojo1).reduce((acc, [key, val]) =\u003E {\r\n if (val !== pojo2[key]) {\r\n acc.push(key);\r\n }\r\n return acc;\r\n}, []);","IsDeferred":false},{"Name":"Map - forEach","Code":"var diff = [];\r\n\r\nmap1.forEach((val, key) =\u003E {\r\n if (val !== map2.get(key)) {\r\n diff.push(key);\r\n }\r\n});","IsDeferred":false},{"Name":"Map - for...of entries","Code":"var diff = [];\r\n\r\nfor (var [key, val] of map1.entries()) {\r\n if (val !== map2.get(key)) {\r\n diff.push(key);\r\n }\r\n}","IsDeferred":false}]}