Shift and pop

JavaScript performance comparison

Revision 2 of this test case created by Jonathan Perry

Preparation code

 
<script>
Benchmark.prototype.setup = function() {
    var array = [ ];
    while (array.length < 1008) {
        array = array.concat([ "A", "B", "C", "D", "E", "F", "G", "H", "I" ]);
    }
};
</script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
Shift 1
                        var key;
                        while (array.length) {
                                key = array.shift();
                        }
 
pending…
Pop 1
                        var key;
                        while (array.length) {
                                key = array.pop();
                        }
 
pending…
Shift 2
                        var key;
                        while (array.length > 0) {
                                key = array.shift();
                        }
 
pending…
Pop 2
                        var key;
                        while (array.length > 0) {
                                key = array.pop();
                        }
 
pending…
Shift 3
                        var key;
                        while (array.length !== 0) {
                                key = array.shift();
                        }
 
pending…
Pop 3
                        var key;
                        while (array.length !== 0) {
                                key = array.pop();
                        }
 
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:

0 comments

Add a comment