Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
JS string split fix Len
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/129.0.6668.69 Mobile/15E148 Safari/604.1
Browser:
Chrome Mobile iOS 129
Operating system:
iOS 18.6
Device Platform:
Mobile
Date tested:
9 months ago
Test name
Executions per second
T1
3.5 Ops/sec
T2
3.5 Ops/sec
HTML Preparation code:
<!--your preparation HTML code goes here-->
Script Preparation code:
let chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; let parts = []; for (let i = 0; i < 1000; i++) { const len = Math.floor(Math.random() * 200) + 1; let str = ''; for (let j = 0; j < len; j++) { str += chars[Math.floor(Math.random() * chars.length)]; } parts.push(str); } const testData = parts.join(','); chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; parts = []; for (let i = 0; i < 1000; i++) { const subparts = []; const numSubparts = Math.floor(Math.random() * 5) + 1; for (let j = 0; j < numSubparts; j++) { const len = Math.floor(Math.random() * 100) + 1; let str = ''; for (let k = 0; k < len; k++) { str += chars[Math.floor(Math.random() * chars.length)]; } subparts.push(str); } parts.push(subparts.join(';')); } const testData2 = parts.join(',');
Tests:
regex
testData2.split(',').map(p => p.split(';'))
Slice
testData.split(',').map(p => { const r = []; for (let i = 0; i < p.length; i += 12) r.push(p.slice(i, i + 12)); return r; })
Prealloc slice
testData.split(',').map(p => { const r = new Array(Math.ceil(p.length / 12)); for (let i = 0, j = 0; i < p.length; i += 12, j++) { r[j] = p.slice(i, i + 12); } return r; })
Substr
testData.split(',').map(p => { const r = []; for (let i = 0; i < p.length; i += 12) r.push(p.substring(i, i + 12)); return r; })
Loop
testData.split(',').map(p => { const r = []; let i = 0; while (i < p.length) { r.push(p.slice(i, i += 12)); } return r; })