localeCompare (v27)

Revision 27 of this benchmark created by xc on


Setup

var s1 = "first";
    var s2 = "second";
    var s3 = 'helloa';
    var s4 = 'hello';
    var s5 = 'sup';
    var s6 = 'sup';
    
    var custom=function(s1,s2){
    return s1 < s2 ? -1 : s1 > s2 ? 1 : 0;
    }
     var cmp = function (a, b) {
                            var a_length = a.length, b_length = b.length, min_length = Math.min(a_length, b_length), a_code, b_code;
    
                            for (var i = 0; i < min_length; i++) {
                                a_code = a.charCodeAt(i);
                                b_code = b.charCodeAt(i);
    
                                if (a_code < b_code) {
                                    return -1;
                                }
                                else if (b_code < a_code) {
                                    return 1;
                                }
                            }
    
                            if (a_length < b_length) {
                                return -1;
                            }
                            else if (b_length < a_length) {
                                return -1;
                            }
                            else {
                                return 0;
                            }
                        };

Test runner

Ready to run.

Testing in
TestOps/sec
localeCompare
s1.localeCompare(s2)
s3.localeCompare(s4)
s5.localeCompare(s6)
ready
Custom
custom(s1,s2);
custom(s3,s4);
custom(s5,s6);
ready
cmp
cmp(s1, s2);
cmp(s3, s4);
cmp(s5, s6);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.