minified vs. minified
JavaScript performance comparison
Info
I noticed subtle changes in the way the file is minified could affect the performance of Safari.
In this case, the "slow" version has typeof checks done like:
"number" == typeof x
and the "fast" version has typeof checks done like:
typeof x == "number"
Preparation code
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/1.0.0-rc.3/lodash.js"></script>
<script>
var dev = _.noConflict();
</script>
<script src="//dl.dropbox.com/u/513327/lodash.min.fast.js"></script>
<script>
var fast = _.noConflict();
</script>
<script src="//dl.dropbox.com/u/513327/lodash.min.slow.js"></script>
<script>
var slow = _.noConflict();
</script>
<script>
Benchmark.prototype.setup = function() {
var dev = window.dev;
var fast = window.fast;
var slow = window.slow;
var numbers = Array(100);
for (var index = 0; index < 100; index++) {
numbers[index] = index;
}
};
</script>
Preparation code output
Test runner
Warning! For accurate results, please disable Firebug before running the tests. (Why?)
Java applet disabled.
| Test | Ops/sec | |
|---|---|---|
dev |
|
pending… |
fast |
|
pending… |
slow |
|
pending… |
You can edit these tests or add even more tests to this page by appending /edit to the URL.
1 comment
Keep in mind if you're running a jsPerf test from within your iOS Twitter client app or other WebView you're running without JIT enabled. Try running this jsPerf in Safari mobile instead.