{"ScriptPreparationCode":"var arr = [];\r\n\r\nfor( var cpt = 0; cpt \u003C 1000000; cpt\u002B\u002B ) {\r\n arr.push( Math.random() );\r\n}\r\n\r\nvar someFn = function( item ) {\r\n return item * 3 \u002B item / 5;\r\n}","TestCases":[{"Name":"Simple for loop","Code":"for( var i = 0, n = arr.length; i \u003C n; i\u002B\u002B ) {\r\n someFn( arr[ i ] );\r\n}","IsDeferred":false},{"Name":"Simple for loop (reverse)","Code":"for( var i = arr.length; i \u003E -1; i-- ) {\r\n someFn( arr[ i ] );\r\n}","IsDeferred":false},{"Name":"Array.forEach","Code":"arr.forEach( someFn );","IsDeferred":false},{"Name":"for loop \u002B Array.entries","Code":"for( var e = arr.entries(), n = e.next(); ! n.done; n = e.next() ) {\r\n someFn( n.value[ 1 ] );\r\n}","IsDeferred":false},{"Name":"while \u002B Array.entries","Code":"var e = arr.entries(), n = e.next();\r\nwhile( ! n.done ) {\r\n someFn( n.value[ 1 ] );\r\n n = e.next();\r\n}","IsDeferred":false},{"Name":"enumerable for loop (order not important)","Code":"for( var i in arr ) {\r\n someFn( arr[ i ] );\r\n}","IsDeferred":false},{"Name":"enumerable for loop (order is respected)","Code":"for( r of arr ) {\r\n someFn( r );\r\n}","IsDeferred":false},{"Name":"Array.map","Code":"arr.map( someFn );","IsDeferred":false},{"Name":"Array.filter","Code":"arr.filter( someFn );","IsDeferred":false},{"Name":"while \u002B Array.entries (condensed)","Code":"var e = arr.entries(), n;\r\nwhile( ! ( n = e.next() ).done ) {\r\n someFn( n.value[ 1 ] );\r\n}","IsDeferred":false},{"Name":"for loop \u002B Array.entries (condensed)","Code":"for( var e = arr.entries(), n; ! (n = e.next()).done; ) {\r\n someFn( n.value[ 1 ] );\r\n}","IsDeferred":false},{"Name":"Simple for loop (condensed)","Code":"for( var i = 0, n = arr.length; i \u003C n; ) {\r\n someFn( arr[ i\u002B\u002B ] );\r\n}","IsDeferred":false},{"Name":"Instructionless for loop","Code":"for( var i = 0, n = arr.length; i \u003C n; someFn( arr[ i\u002B\u002B ] ) ) ;","IsDeferred":false}]}