{"ScriptPreparationCode":"var customers = [\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: true, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 },\r\n { active: false, name: \u0022a\u0022, email: \u0022b\u0022 }\r\n ];\r\n \r\n Array.prototype.filterMap = function(filter) {\r\n const r = [];\r\n const len = this.length;\r\n for(let i=0; i\u003Clen; i\u002B\u002B) {\r\n const item = filter(this[i], i, this);\r\n if (item !== undefined) {\r\n r.push(item);\r\n }\r\n }\r\n return r;\r\n };","TestCases":[{"Name":"reduce","Code":"var emails = customers.filter( (c) =\u003E c.active)\r\n .map( (c) =\u003E ({ name: c.name, email: c.email }));","IsDeferred":false},{"Name":"map","Code":"var emails = customers.filterMap(\r\n (c) =\u003E c.active ?\r\n { name: c.name, email: c.email } :\r\n undefined);","IsDeferred":false}]}