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
Jump 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
Test name
Executions per second
collect
3822064.5 Ops/sec
collect2
1882758.1 Ops/sec
collect3
9848615.0 Ops/sec
collect4
9678867.0 Ops/sec
Related benchmarks:
Object.entries VS Object.keys
Test qwe qweqw
Object.entries VS Object.keys.map
Object.entries VS Object.keys.map 2
Object.entries VS Object.keys VS Object.entries with for of
firstChild vs lastChild
Object.entries vs for of
entries vs for vs foreach vs some vs every
Object.entries VS Object.keys for count
Comments
Confirm delete:
Do you really want to delete benchmark?