diff options
Diffstat (limited to 'speed')
-rw-r--r-- | speed/slice.vs.concat.html | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/speed/slice.vs.concat.html b/speed/slice.vs.concat.html new file mode 100644 index 000000000..c061e079f --- /dev/null +++ b/speed/slice.vs.concat.html @@ -0,0 +1,46 @@ +<script type="text/javascript"> +(function(){ + // Conclusion: slice is a little faster except on Chrome + // clone() is slower on FF & IE but takes 50% on Safari & Chrome + + var SIZE = 1e4, + LOOPS = 500; + + var arr = new Array(SIZE); + for ( var i=arr.length-1; i >= 0; --i ) + arr[i] = 0; + + var t = new Date; + for ( i=0; i < LOOPS; i++ ) + arr.slice(0); + var tslice = new Date - t; + + t = new Date; + for ( i=0; i < LOOPS; i++ ) + arr.concat(); + var tconcat = new Date - t; + + // clone() is just to see how fast built-ins are + t = new Date; + for ( i=0; i < LOOPS; i++ ) + clone(arr); + var tclone = new Date - t; + + alert([ + 'slice:'+tslice, + 'concat:'+tconcat, + 'clone:'+tclone + ].join('\n')); + + + function clone(arr){ + var i = arr.length, + copy = new Array(i); + + while (i--) + copy[i] = arr[i]; + + return copy; + } +})(); +</script>
\ No newline at end of file |