Month Number Speed Test

JavaScript performance comparison

Test case created by epascarello

Preparation code

 
<script>
Benchmark.prototype.setup = function() {
    function getMonthString( month) {
        return "JanFebMarAprMayJunJulAugSepOctNovDec".indexOf(month) / 3 + 1;
    }
   
    function getMonthDate(mon){
       return new Date(Date.parse(mon +" 1, 2012")).getMonth()+1
    }
   
    var _months = {
        "Jan" : "01",
        "Feb" : "02",
        "Mar" : "03",
        "Apr" : "04",
        "May" : "05",
        "Jun" : "06",
        "Jul" : "07",
        "Aug" : "08",
        "Sep" : "09",
        "Oct" : "10",
        "Nov" : "11",
        "Dec" : "12"
    };
    function getMonthObject(month) {
      return _months[month];
    }
   
   
    function getMonthArray(month)
    {
        var idx = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
           'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'].indexOf(month) + 1;
   
        return idx < 10 ? '0' + idx : idx;
    }
};
</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
Array Index
getMonthArray("Jan"); 
getMonthArray("Feb");
getMonthArray("Mar");
getMonthArray("Apr");
getMonthArray("May");
getMonthArray("Jun");
getMonthArray("Jul");
getMonthArray("Aug");
getMonthArray("Sep");
getMonthArray("Oct");
getMonthArray("Nov");
getMonthArray("Dec");
pending…
Object
getMonthObject("Jan"); 
getMonthObject("Feb");
getMonthObject("Mar");
getMonthObject("Apr");
getMonthObject("May");
getMonthObject("Jun");
getMonthObject("Jul");
getMonthObject("Aug");
getMonthObject("Sep");
getMonthObject("Oct");
getMonthObject("Nov");
getMonthObject("Dec");
pending…
IndexOf String
getMonthString("Jan"); 
getMonthString("Feb");
getMonthString("Mar");
getMonthString("Apr");
getMonthString("May");
getMonthString("Jun");
getMonthString("Jul");
getMonthString("Aug");
getMonthString("Sep");
getMonthString("Oct");
getMonthString("Nov");
getMonthString("Dec");
pending…
Date parse
getMonthDate("Jan"); 
getMonthDate("Feb");
getMonthDate("Mar");
getMonthDate("Apr");
getMonthDate("May");
getMonthDate("Jun");
getMonthDate("Jul");
getMonthDate("Aug");
getMonthDate("Sep");
getMonthDate("Oct");
getMonthDate("Nov");
getMonthDate("Dec");
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