Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Comparing 3 small hash types made in javascript
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
Browser:
Chrome 131
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
crc32
314669.7 Ops/sec
adler32
5867242.0 Ops/sec
fletcher32
1427610.0 Ops/sec
Tests:
crc32
function crc32(s) { for (var t = [], i = 0; i < 256; i++) { for (var c = i, j = 0; j < 8; j++) { c = c & 1 ? 0xEDB88320 ^ c >>> 1 : c >>> 1; } t[i] = c; } for (i = -1, c = -1; ++i < s.length;) { c = c >>> 8 ^ t[c & 255 ^ s.charCodeAt(i)]; } return ((c ^ -1) >>> 0).toString(16).toUpperCase(); } crc32(Date.now())
adler32
function adler32(string) { const MOD_ADLER = 65521; let a = 1, b = 0; for (let i = 0; i < string.length; i++) { a = (a + string.charCodeAt(i)) % MOD_ADLER; b = (b + a) % MOD_ADLER; } return (b << 16 | a).toString(16); } adler32(Date.now())
fletcher32
function fletcher32(data) { for (let i = sum1 = sum2 = 0; i < data.length; i++) { sum1 = (sum1 + data.charCodeAt(i)) % 65535; sum2 = (sum2 + sum1) % 65535; } return (sum2 << 16 | sum1).toString(16); } fletcher32(Date.now())