typeof vs. tostring to check function type

JavaScript performance comparison

Revision 4 of this test case created

Preparation code

 
<script>
Benchmark.prototype.setup = function() {
    var a=function(){};
    var b='string';
    var f=function(x){return typeof x==="function";};
};
</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
typeof - function
typeof a==="function"
pending…
tostring - function
Object.prototype.toString.call(a) === "[object Function]";
 
pending…
duck-typing - function
!!(a && a.constructor && a.call && a.apply);
 
pending…
typeof as function - function
f(a)
pending…
typeof - string
typeof b === 'function'
pending…
typeof as function - string
f(b)
pending…
instanceof - function
a instanceof Function
pending…
instanceof - string
b instanceof Function
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