Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
JQuery4 new div element with class - 1k reps [b]
Faster way to create new dom elements before insertion with JQuery (+ set class)
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:147.0) Gecko/20100101 Firefox/147.0
Browser:
Firefox 147
Operating system:
Windows
Device Platform:
Desktop
Date tested:
2 months ago
Test name
Executions per second
JQuery - direct + class
201.3 Ops/sec
JQuery - cloneNode + class
2114.6 Ops/sec
JQuery - cloneNode + class (new)
1982.0 Ops/sec
HTML Preparation code:
<script src="https://code.jquery.com/jquery-4.0.0.min.js" integrity="sha256-OaVG6prZf4v69dPg6PhVattBXkcOWQB62pdZ3ORyrao=" crossorigin="anonymous"></script>
Tests:
JQuery - direct + class
var list = [], n = 0; var newDiv = function(){ return $('<div class="test">'); } while(true) { n++; list.push(newDiv()); if(n===1000) break; }
JQuery - cloneNode + class
var list = [], n = 0, divTemplate = document.createElement('div'); var newDiv = function (classname) { var node = divTemplate.cloneNode(false); if (classname !== void 0) { var args = new Array(arguments.length); for (var i = 0, ii = arguments.length; i < ii; i++) { args[i] = arguments[i]; } node.className = args.join(' '); } return $(node); } while(true) { n++; list.push(newDiv("test")); if(n===1000) break; }
JQuery - cloneNode + class (new)
var list = [], n = 0, divTemplate = document.createElement('div'); var newDiv = function (classname) { var node = divTemplate.cloneNode(false); if (classname !== void 0) node.className = Array.prototype.slice.call(arguments).join(' '); return $(node); } while(true) { n++; list.push(newDiv("test")); if(n===1000) break; }