{"ScriptPreparationCode":"window.foo = [1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022];\r\nwindow.bar = [1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022, 1,2,3,\u00224\u0022];\r\n\r\nwindow.equals = (a, b) =\u003E\r\n a.length === b.length \u0026\u0026\r\n a.every((v, i) =\u003E v === b[i]);\r\n\r\nwindow.equalsIgnoreOrder = (a, b) =\u003E {\r\n if (a.length !== b.length) return false;\r\n const uniqueValues = new Set([...a, ...b]);\r\n for (const v of uniqueValues) {\r\n const aCount = a.filter(e =\u003E e === v).length;\r\n const bCount = b.filter(e =\u003E e === v).length;\r\n if (aCount !== bCount) return false;\r\n }\r\n return true;\r\n}\r\n\r\nwindow.arrIdentical = (a1, a2) =\u003E {\r\n // Tim Down: http://stackoverflow.com/a/7837725/308645\r\n var i = a1.length;\r\n if (i != a2.length) return false;\r\n while (i--) {\r\n if (a1[i] !== a2[i]) return false;\r\n }\r\n return true;\r\n}\r\n\r\nwindow.arrForLoop = (a1, a2) =\u003E {\r\n let i = a1.length;\r\n \r\n if(i !== a2.length) {\r\n \treturn false; \r\n }\r\n \r\n while (i--) {\r\n if(a1[i] !== a2[i]) {\r\n return false; \r\n }\r\n }\r\n \r\n return true;\r\n}","TestCases":[{"Name":"_.isEqual","Code":"_.isEqual(window.foo, window.bar)","IsDeferred":false},{"Name":"JSON.stringify","Code":"JSON.stringify(window.foo) === JSON.stringify(window.bar);","IsDeferred":false},{"Name":"equals","Code":"window.equals(window.foo, window.bar)","IsDeferred":false},{"Name":"equalsIgnoreOrder","Code":"window.equalsIgnoreOrder(window.foo, window.bar)","IsDeferred":false},{"Name":"arrIdentical","Code":"arrIdentical(window.foo, window.bar)","IsDeferred":false},{"Name":"arrForLoop","Code":"arrForLoop(window.foo, window.bar)","IsDeferred":false}]}