{"ScriptPreparationCode":"String.format = function() {\r\n return String._toFormattedString(false, arguments);\r\n};\r\nString._toFormattedString = function(l, j) {\r\n var c = \u0027\u0027,\r\n e = j[0];\r\n for (var a = 0; true; ) {\r\n var f = e.indexOf(\u0027{\u0027, a),\r\n d = e.indexOf(\u0027}\u0027, a);\r\n if (f \u003C 0 \u0026\u0026 d \u003C 0) {\r\n c \u002B= e.slice(a);\r\n break;\r\n }\r\n if (d \u003E 0 \u0026\u0026 (d \u003C f || f \u003C 0)) {\r\n c \u002B= e.slice(a, d \u002B 1);\r\n a = d \u002B 2;\r\n continue;\r\n }\r\n c \u002B= e.slice(a, f);\r\n a = f \u002B 1;\r\n if (e.charAt(a) === \u0027{\u0027) {\r\n c \u002B= \u0027{\u0027;\r\n a\u002B\u002B;\r\n continue;\r\n }\r\n if (d \u003C 0) break;\r\n var h = e.substring(a, d),\r\n g = h.indexOf(\u0027:\u0027),\r\n k = parseInt(g \u003C 0 ? h : h.substring(0, g), 10) \u002B 1,\r\n i = g \u003C 0 ? \u0027\u0027 : h.substring(g \u002B 1),\r\n b = j[k];\r\n if (typeof b === \u0027undefined\u0027 || b === null) b = \u0027\u0027;\r\n if (b.toFormattedString) c \u002B= b.toFormattedString(i);\r\n else if (l \u0026\u0026 b.localeFormat) c \u002B= b.localeFormat(i);\r\n else if (b.format) c \u002B= b.format(i);\r\n else c \u002B= b.toString();\r\n a = d \u002B 1;\r\n }\r\n return c;\r\n};\r\n\r\nvar name = \u0022name\u0022;\r\nvar id = \u0022id\u0022;\r\n\r\n","TestCases":[{"Name":"Template literal","Code":"for (let i = 0; i \u003C 80; \u002B\u002Bi) {\r\n let result = \u0060${id}: 1, ${name}: someItem\u0060;\r\n}","IsDeferred":false},{"Name":"String format","Code":"for (let i = 0; i \u003C 80; \u002B\u002Bi) {\r\n let result = String.format(\u0022{0}: 1, {1}: someItem\u0022, id, name);\r\n}","IsDeferred":false}]}