{"ScriptPreparationCode":"\r\nvar arr = [\u0027a\u0027, \u0027b\u0027, \u0027c\u0027];","TestCases":[{"Name":"native map","Code":"arr.map(v=\u003Ev\u002B\u0027hi\u0027)","IsDeferred":false},{"Name":"_.map","Code":"_.map(arr,v=\u003Ev\u002B\u0027hi\u0027)","IsDeferred":false},{"Name":"myMap (1st variation)","Code":"function myMap(arr,func)\r\n{\r\n if(!Array.isArray(arr))\r\n return -1;\r\n var res=[];\r\n for(let i=0;i\u003Carr.length;i\u002B\u002B)\r\n res.push(func(arr[i],i,arr))\r\n return res;\r\n}\r\n\r\nmyMap(arr,v=\u003Ev\u002B\u0027hi\u0027)","IsDeferred":false},{"Name":"myMap (2nd variation)","Code":"var is_array = function (value) {return value \u0026\u0026 typeof value === \u0027object\u0027 \u0026\u0026 typeof value.length === \u0027number\u0027 \u0026\u0026 typeof value.splice === \u0027function\u0027 \u0026\u0026 !(value.propertyIsEnumerable(\u0027length\u0027));};\r\n\r\nfunction myMap(arr,func)\r\n{\r\n if(!is_array(arr))\r\n return -1;\r\n var res=Array(arr.length);\r\n for(let i=0;i\u003Carr.length;i\u002B\u002B)\r\n res[i]=func(arr[i],i,arr)\r\n return res;\r\n}\r\n\r\nmyMap(arr,v=\u003Ev\u002B\u0027hi\u0027)","IsDeferred":false},{"Name":"myMap (3rd variation)","Code":"var is_array = function (value) {return value \u0026\u0026 typeof value === \u0027object\u0027 \u0026\u0026 typeof value.length === \u0027number\u0027 \u0026\u0026 typeof value.splice === \u0027function\u0027 \u0026\u0026 !(value.propertyIsEnumerable(\u0027length\u0027));};\r\nfunction myMap(arr,func)\r\n{\r\n if(!is_array(arr))\r\n return -1;\r\n return arr.map(func);\r\n}\r\n\r\nmyMap(arr,v=\u003Ev\u002B\u0027hi\u0027)","IsDeferred":false}]}