{"ScriptPreparationCode":"var objs = [];\r\nfor (var i = 0; i \u003C 1000; i\u002B\u002B) {\r\n objs.push({\r\n foo: {baz: null},\r\n bar: null\r\n });\r\n}\r\nvar fieldName = \u0022foo\u0022","TestCases":[{"Name":"Array.from","Code":"const out = Array.from(objs, (o) =\u003E o[fieldName]);","IsDeferred":false},{"Name":"Preallocate null","Code":"const out = new Array(objs.length).fill(null);\r\nfor (let i = 0; i \u003C objs.length; i\u002B\u002B) {\r\n out[i] = objs[i][fieldName]\r\n}","IsDeferred":false},{"Name":"Preallocate 0","Code":"const out = new Array(objs.length).fill(0);\r\nfor (let i = 0; i \u003C objs.length; i\u002B\u002B) {\r\n out[i] = objs[i][fieldName]\r\n}","IsDeferred":false},{"Name":"Preallocate empty object","Code":"const out = new Array(objs.length).fill({});\r\nfor (let i = 0; i \u003C objs.length; i\u002B\u002B) {\r\n out[i] = objs[i][fieldName]\r\n}","IsDeferred":false},{"Name":"Unfilled initial array","Code":"const out = new Array(objs.length);\r\nfor (let i = 0; i \u003C objs.length; i\u002B\u002B) {\r\n out[i] = objs[i][fieldName]\r\n}","IsDeferred":false}]}