regexp .test() vs indexOf (v131)

Revision 131 of this benchmark created on


Description

select correct chrome.tabs.query object based on browser

Setup

var browserSelect1 = function() {
        if (window.navigator.vendor.indexOf("Google") === 0) {
            return {"active": true, "currentWindow": true};
        }
        if (window.navigator.vendor.indexOf("Opera") === 0) {
            return {"active": true, "windowType": "normal"};
        }
    };
    
    var browserSelect2 = function() {
        if (/Google/i.test(window.navigator.vendor)) {
            return {"active": true, "currentWindow": true};
        }
        if (/Opera/i.test(window.navigator.vendor)) {
            return {"active": true, "windowType": "normal"};
        }
    };
    
    var browserSelect3 = function() {
        if (window.navigator.vendor.charAt(0) === "G") {
            return {"active": true, "currentWindow": true};
        }
        if (window.navigator.vendor.charAt(0) === "O") {
            return {"active": true, "windowType": "normal"};
        }
    };
    
    var browserSelect4 = function () {
        var obj = {
            active: true
        };
        if (window.navigator.vendor.charAt(0) === "G") {
            obj.currentWindow = true;
        }
        if (window.navigator.vendor.charAt(0) === "O") {
            obj.windowType = "normal";
        }
        return obj;
    };

Test runner

Ready to run.

Testing in
TestOps/sec
indexOf
browserSelect1();
ready
Regexp
browserSelect2();
ready
.charAt(0)
browserSelect3();
ready
.charAt(0) + var
browserSelect4();
ready

Revisions

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