{"ScriptPreparationCode":"var arrA = [];var arrB = [];\r\n\r\nfor (var i = 0; i \u003C 100000; i\u002B\u002B) {\r\n arr[i] = \u0027a\u0027;\r\n}\r\nfor (var i = 0; i \u003C 100000; i\u002B\u002B) {\r\n arr[i] = \u0027b\u0027;\r\n}\r\n\r\nfunction compareLocal(o1,o2){\r\n if (o1 === o2) { return 0; }\r\n\r\n // undefined is lower than any value\r\n if (o1 === undefined) { return -1; }\r\n if (o2 === undefined) { return 1; }\r\n // null is lower than any value except undefined\r\n if (o1 === null) { return -1; }\r\n if (o2 === null) { return 1; }\r\n return String(o1).localeCompare(String(o2), undefined, options);\r\n}\r\n\r\nfunction compare(o1,o2){\r\n if (o1 === o2) { return 0; }\r\n\r\n // undefined is lower than any value\r\n if (o1 === undefined) { return -1; }\r\n if (o2 === undefined) { return 1; }\r\n // null is lower than any value except undefined\r\n if (o1 === null) { return -1; }\r\n if (o2 === null) { return 1; }\r\n return o1 \u003C o2 ? -1 : 1;\r\n}\r\n","TestCases":[{"Name":"Compare local","Code":"for(var i = 0; i\u003C100000;i\u002B\u002B){\r\n compareLocal(arrA[i],arrB[i]);\r\n}","IsDeferred":false},{"Name":"compare","Code":"for(var i = 0; i\u003C100000;i\u002B\u002B){\r\n compare(arrA[i],arrB[i]);\r\n}","IsDeferred":false}]}