Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
stage1 collect varients
(version: 1)
Comparing performance of:
collect vs collect2 vs collect3 vs collect4
Created:
one year ago
by:
Guest
Go to the latest result
Script Preparation code:
var Z=()=>{},_=()=>document.createDocumentFragment(),$=(j)=>document.createTextNode(j),P=(j)=>document.createElement(j),z=(j)=>j.cloneNode(!0),I=(j,q)=>q.appendChild(j),R=(j,q)=>q.insertBefore(j,q.firstChild),U=(j,q)=>q.parentNode.insertBefore(j,q.nextSibling),W=(j,q)=>(q.parentNode.replaceChild(j,q),j),C=(j,q)=>{new MutationObserver((A,B)=>{for(let H of A)for(let F of H.removedNodes)if(F.contains(j)){q(),B.disconnect();return}}).observe(document,{childList:!0,subtree:!0})};var L=P("template"),X=document.createTreeWalker(L),M=(j)=>{return L.innerHTML=j,L.content.firstChild},T=(j,q,A)=>{let B=X,H={},F=q.length,J=0,G;B.currentNode=j;for(;J<F;J++){G=A[J];while(G--)B.nextNode();H[q[J]]=B.currentNode}return H},Y=document.createNodeIterator(L),N=(j,q,A)=>{let B=Y,H={},F=q.length,J=0,G;B.root=j;for(;J<F;J++){G=A[J];while(G--)B.nextNode();H[q[J]]=B.referenceNode}return H},O=(j,q,A)=>{let B={},H=q.length,F=0,J,G=j;for(;F<H;F++){J=A[F];while(J--)G=G.firstChild??G.nextSibling;B[q[F]]=G}return B},E=(j,q,A)=>{let B={},H=q.length,F=0;for(;F<H;F++){let J=A[F],G=j;while(J--)G=G.firstChild??G.nextSibling;B[q[F]]=G}return B};var Q={},V=(j)=>{let q="__"+j.type,A=j.target;while(A){if(A[q])return A[q](j);A=A.parentNode}},w=(j)=>{Q[j]??=(document.addEventListener(j,V),!0)},S=(j)=>{Q[j]=null,document.removeEventListener(j,V)};var h=(j)=>{let q={};return new Proxy({...j,on(A,B){return(q[A]??=[]).push(B),()=>{q[A]?.splice(q[A].indexOf(B)>>>0,1)}}},{set(A,B,H){return q[B]?.forEach((F)=>F(H,A[B])),A[B]=H,!0}})}; var h=M; var collect=T; var collect2=N; var collect3=O; var collect4=E; var view=h('<div><div><div><div><div><div><div><div><div><div><div><!--></div></div></div></div></div></div></div></div></div></div></div>');
Tests:
collect
collect(view,['a','b','c'],[1,3,5])
collect2
collect2(view,['a','b','c'],[1,3,5])
collect3
collect3(view,['a','b','c'],[1,3,5])
collect4
collect4(view,['a','b','c'],[1,3,5])
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (4)
Previous results
Fork
Test case name
Result
collect
collect2
collect3
collect4
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
one year ago
)
User agent:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
Browser/OS:
Chrome 135 on Linux
View result in a separate tab
Embed
Embed Benchmark Result
collect3
9.8M/s
collect4
9.7M/s
collect
3.8M/s
collect2
1.9M/s
View exact numbers
Test name
Executions per second
✓
collect3
9,848,615 Ops/sec
collect4
9,678,867 Ops/sec
collect
3,822,064 Ops/sec
collect2
1,882,758 Ops/sec
Related benchmarks
Object.entries VS Object.keys
firstChild vs lastChild
Comments
Confirm delete:
Do you really want to delete benchmark?