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
Which is faster—classes or pojos?
function C() {
}
function K() {
}
K.prototype.method0 = function() { alert(0); };
K.prototype.method1 = function() { alert(1); };
K.prototype.method2 = function() { alert(2); };
K.prototype.method3 = function() { alert(3); };
K.prototype.method4 = function() { alert(4); };
K.prototype.method5 = function() { alert(5); };
K.prototype.method6 = function() { alert(6); };
K.prototype.method7 = function() { alert(7); };
K.prototype.method8 = function() { alert(8); };
K.prototype.method9 = function() { alert(9); };
K.prototype.method10 = function() { alert(10); };
K.prototype.method11 = function() { alert(11); };
K.prototype.method12 = function() { alert(12); };
K.prototype.method13 = function() { alert(13); };
K.prototype.method14 = function() { alert(14); };
K.prototype.method15 = function() { alert(15); };
K.prototype.method16 = function() { alert(16); };
K.prototype.method17 = function() { alert(17); };
K.prototype.method18 = function() { alert(18); };
K.prototype.method19 = function() { alert(19); };
K.prototype.method20 = function() { alert(20); };
K.prototype.method21 = function() { alert(21); };
K.prototype.method22 = function() { alert(22); };
K.prototype.method23 = function() { alert(23); };
K.prototype.method24 = function() { alert(24); };
K.prototype.method25 = function() { alert(25); };
K.prototype.method26 = function() { alert(26); };
K.prototype.method27 = function() { alert(27); };
K.prototype.method28 = function() { alert(28); };
K.prototype.method29 = function() { alert(29); };
K.prototype.method30 = function() { alert(30); };
K.prototype.method31 = function() { alert(31); };
K.prototype.method32 = function() { alert(32); };
K.prototype.method33 = function() { alert(33); };
K.prototype.method34 = function() { alert(34); };
K.prototype.method35 = function() { alert(35); };
K.prototype.method36 = function() { alert(36); };
K.prototype.method37 = function() { alert(37); };
K.prototype.method38 = function() { alert(38); };
K.prototype.method39 = function() { alert(39); };
K.prototype.method40 = function() { alert(40); };
K.prototype.method41 = function() { alert(41); };
K.prototype.method42 = function() { alert(42); };
K.prototype.method43 = function() { alert(43); };
K.prototype.method44 = function() { alert(44); };
K.prototype.method45 = function() { alert(45); };
K.prototype.method46 = function() { alert(46); };
K.prototype.method47 = function() { alert(47); };
K.prototype.method48 = function() { alert(48); };
K.prototype.method49 = function() { alert(49); };
K.prototype.method50 = function() { alert(50); };
K.prototype.method51 = function() { alert(51); };
K.prototype.method52 = function() { alert(52); };
K.prototype.method53 = function() { alert(53); };
K.prototype.method54 = function() { alert(54); };
K.prototype.method55 = function() { alert(55); };
K.prototype.method56 = function() { alert(56); };
K.prototype.method57 = function() { alert(57); };
K.prototype.method58 = function() { alert(58); };
K.prototype.method59 = function() { alert(59); };
K.prototype.method60 = function() { alert(60); };
K.prototype.method61 = function() { alert(61); };
K.prototype.method62 = function() { alert(62); };
K.prototype.method63 = function() { alert(63); };
K.prototype.method64 = function() { alert(64); };
K.prototype.method65 = function() { alert(65); };
K.prototype.method66 = function() { alert(66); };
K.prototype.method67 = function() { alert(67); };
K.prototype.method68 = function() { alert(68); };
K.prototype.method69 = function() { alert(69); };
K.prototype.method70 = function() { alert(70); };
K.prototype.method71 = function() { alert(71); };
K.prototype.method72 = function() { alert(72); };
K.prototype.method73 = function() { alert(73); };
K.prototype.method74 = function() { alert(74); };
K.prototype.method75 = function() { alert(75); };
K.prototype.method76 = function() { alert(76); };
K.prototype.method77 = function() { alert(77); };
K.prototype.method78 = function() { alert(78); };
K.prototype.method79 = function() { alert(79); };
K.prototype.method80 = function() { alert(80); };
K.prototype.method81 = function() { alert(81); };
K.prototype.method82 = function() { alert(82); };
K.prototype.method83 = function() { alert(83); };
K.prototype.method84 = function() { alert(84); };
K.prototype.method85 = function() { alert(85); };
K.prototype.method86 = function() { alert(86); };
K.prototype.method87 = function() { alert(87); };
K.prototype.method88 = function() { alert(88); };
K.prototype.method89 = function() { alert(89); };
K.prototype.method90 = function() { alert(90); };
K.prototype.method91 = function() { alert(91); };
K.prototype.method92 = function() { alert(92); };
K.prototype.method93 = function() { alert(93); };
K.prototype.method94 = function() { alert(94); };
K.prototype.method95 = function() { alert(95); };
K.prototype.method96 = function() { alert(96); };
K.prototype.method97 = function() { alert(97); };
K.prototype.method98 = function() { alert(98); };
K.prototype.method99 = function() { alert(99); };
Ready to run.
Test | Ops/sec | |
---|---|---|
Class |
| ready |
Class with many methods |
| ready |
POJO |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.