{"ScriptPreparationCode":"var defaultDateOptions = {\r\n compact: false,\r\n dated: true,\r\n timed: false,\r\n sep: \u0027:\u0027,\r\n utc: false\r\n}\r\ndateToISOString = function (date, options) {\r\n if (options === void 0) { options = defaultDateOptions; }\r\n var response = \u0027\u0027;\r\n options = { ...defaultDateOptions, ...options };\r\n if (options.dated) {\r\n var year = options.utc ? date.getUTCFullYear() : date.getFullYear();\r\n var month = (options.utc ? date.getUTCMonth() : date.getMonth()) \u002B 1;\r\n var day = options.utc ? date.getUTCDate() : date.getDate();\r\n var monthStr = month \u003C 10 ? \u00220\u0022 \u002B month : \u0022\u0022 \u002B month;\r\n var dayStr = day \u003C 10 ? \u00220\u0022 \u002B day : \u0022\u0022 \u002B day;\r\n response \u002B= [year, monthStr, dayStr].join(options.compact ? \u0027\u0027 : \u0027-\u0027);\r\n }\r\n if (options.timed) {\r\n var hours = options.utc ? date.getUTCHours() : date.getHours();\r\n var minutes = options.utc ? date.getUTCMinutes() : date.getMinutes();\r\n var seconds = options.utc ? date.getUTCSeconds() : date.getSeconds();\r\n var hoursStr = hours \u003C 10 ? \u00220\u0022 \u002B hours : \u0022\u0022 \u002B hours;\r\n var minutesStr = minutes \u003C 10 ? \u00220\u0022 \u002B minutes : \u0022\u0022 \u002B minutes;\r\n var secondsStr = seconds \u003C 10 ? \u00220\u0022 \u002B seconds : \u0022\u0022 \u002B seconds;\r\n if (options.dated)\r\n response \u002B= \u0027 \u0027;\r\n response \u002B= [hoursStr, minutesStr, secondsStr].join(options.compact ? \u0027\u0027 : options.sep);\r\n }\r\n return response;\r\n}","TestCases":[{"Name":"String to Date","Code":"const str = \u00272022-01-01\u0027\r\nconst dt = new Date(str)","IsDeferred":false},{"Name":"Date to String","Code":"const dt = new Date()\r\ndateToISOString(dt)","IsDeferred":false}]}