jsPerf.app is an online JavaScript performance benchmark test runner & jsperf.com mirror. It is a complete rewrite in homage to the once excellent jsperf.com now with hopefully a more modern & maintainable codebase.
jsperf.com URLs are mirrored at the same path, e.g:
https://jsperf.com/negative-modulo/2
Can be accessed at:
https://jsperf.app/negative-modulo/2
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
var game = {
results: [{
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2",
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "1"
}, {
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2"
}, {
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2"
}, {
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2",
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "1"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2"
}, {
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "1",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2",
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2"
}, {
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"ec57fb36-7022-45c8-95e5-68dfe80f1526": "2",
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2"
}, {
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"d17a12de-75a7-4f60-8401-0ba0cfab509c": "2",
"d0243eb5-0923-4c5b-93ca-08bb6d2f75b6": "2",
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}, {
"c22a337d-2c02-4394-8ccb-e13dbbe4ea53": "2",
"23d18156-5065-46bb-8c31-f15420457415": "2"
}],
score: {},
countResult: function(cb) {
var len = this.results.length - 1,
_this = this;
while (len >= 0) {
var e = this.results[len],
keys = Object.keys(e),
olen = keys.length,
x = 0;
while (x < olen) {
var id = keys[x],
score = e[id];
_this.score[id] = _this.score[id] !== undefined ? _this.score[id] + parseInt(score) : parseInt(score);
++x;
}
len--;
}
cb();
},
getBestScore: function() {
var rid = null,
s = 0,
keys = Object.keys(this.score),
len = keys.length,
x = 0;
while (x < len) {
var id = keys[x],
score = this.score[id];
if (s < score) {
s = score;
rid = id;
}
++x;
}
return rid;
},
getResult: function(rid) {
var ret = {}, res = gameData.results,
len = res.length,
x = 0;
while (x < len) {
var r = res[x];
if (r.id === rid) {
ret = r;
break;
}
++x;
}
return ret;
}
}
Ready to run.
Test | Ops/sec | |
---|---|---|
Count |
| ready |
Get best score |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.